Exemple #1
0
        private void InitializeClasses()
        {
            try
            {
                Equipment     = new Equipment(this);
                Statistics    = World.DatabaseManager.LoadStatistics(this);
                Information   = new Information(this);
                State         = new State(this);
                Storage       = new Storage(this);
                Boosters      = World.DatabaseManager.LoadBoosters(this);
                Abilities     = Hangar.Ship.Abilities(this);
                Settings      = new Settings(this);
                Skylab        = World.DatabaseManager.LoadSkylab(this);
                Pet           = World.DatabaseManager.LoadPet(this);
                QuestData     = new QuestPlayerData(this);
                Announcements = new Announcements(this);
                Gates         = new PlayerGates(this);
                World.DatabaseManager.SavePlayerHangar(this, Hangar);
            }
            catch (Exception exception)
            {
                // getting rid of user
                Console.WriteLine("Exception found.. Disconnecting user");
                Console.WriteLine("Exception: " + exception + ";" + exception.StackTrace + ";" + exception.Message);

                var session = GetGameSession();
                if (session != null)
                {
                    session.Kick();
                }
                else
                {
                    Invalidate();
                }
            }
        }
        private PlayerGates LoadGates(int userId)
        {
            try
            {
                using (var mySqlClient = SqlDatabaseManager.GetClient())
                {
                    var queryRow = mySqlClient.ExecuteQueryRow("SELECT * FROM player_galaxy_gates WHERE PLAYER_ID=" + userId);

                    var gates          = new PlayerGates();
                    var completedGates = JsonConvert.DeserializeObject <int[]>(queryRow["COMPLETED_GATES"].ToString());
                    if (completedGates != null && completedGates.Length == 10)
                    {
                        gates.AlphaComplete   = completedGates[0];
                        gates.BetaComplete    = completedGates[1];
                        gates.GammaComplete   = completedGates[2];
                        gates.DeltaComplete   = completedGates[3];
                        gates.EpsilonComplete = completedGates[4];
                        gates.ZetaComplete    = completedGates[5];
                        gates.KappaComplete   = completedGates[6];
                        gates.KronosComplete  = completedGates[7];
                        gates.LambdaComplete  = completedGates[8];
                        gates.HadesComplete   = completedGates[9];
                    }

                    // ALPHA Gate
                    var alphaPrepared = Convert.ToBoolean(intConv(queryRow["ALPHA_PREPARED"]));
                    gates.AlphaReady = alphaPrepared;
                    var alphaWave = intConv(queryRow["ALPHA_WAVE"]);
                    gates.AlphaWave = alphaWave;
                    var alphaLives = intConv(queryRow["ALPHA_LIVES"]);
                    gates.AlphaLives = alphaLives;

                    // BETA Gate
                    var betaPrepared = Convert.ToBoolean(intConv(queryRow["BETA_PREPARED"]));
                    gates.BetaReady = betaPrepared;
                    var betaWave = intConv(queryRow["BETA_WAVE"]);
                    gates.BetaWave = betaWave;
                    var betaLives = intConv(queryRow["BETA_LIVES"]);
                    gates.BetaLives = betaLives;

                    // GAMMA Gate
                    var gammaPrepared = Convert.ToBoolean(intConv(queryRow["GAMMA_PREPARED"]));
                    gates.GammaReady = gammaPrepared;
                    var gammaWave = intConv(queryRow["GAMMA_WAVE"]);
                    gates.GammaWave = gammaWave;
                    var gammaLives = intConv(queryRow["GAMMA_LIVES"]);
                    gates.GammaLives = gammaLives;

                    // DELTA Gate
                    var deltaPrepared = Convert.ToBoolean(intConv(queryRow["DELTA_PREPARED"]));
                    gates.DeltaReady = deltaPrepared;
                    var deltaWave = intConv(queryRow["DELTA_WAVE"]);
                    gates.DeltaWave = deltaWave;
                    var deltaLives = intConv(queryRow["DELTA_LIVES"]);
                    gates.DeltaLives = deltaLives;

                    // EPSILON Gate
                    var epsilonPrepared = Convert.ToBoolean(intConv(queryRow["EPSILON_PREPARED"]));
                    gates.EpsilonReady = epsilonPrepared;
                    var epsilonWave = intConv(queryRow["EPSILON_WAVE"]);
                    gates.EpsilonWave = epsilonWave;
                    var epsilonLives = intConv(queryRow["EPSILON_LIVES"]);
                    gates.EpsilonLives = epsilonLives;

                    // ZETA Gate
                    var zetaPrepared = Convert.ToBoolean(intConv(queryRow["ZETA_PREPARED"]));
                    gates.ZetaReady = zetaPrepared;
                    var zetaWave = intConv(queryRow["ZETA_WAVE"]);
                    gates.ZetaWave = zetaWave;
                    var zetaLives = intConv(queryRow["ZETA_LIVES"]);
                    gates.ZetaLives = zetaLives;

                    // KAPPA Gate
                    var kappaPrepared = Convert.ToBoolean(intConv(queryRow["KAPPA_PREPARED"]));
                    gates.KappaReady = kappaPrepared;
                    var kappaWave = intConv(queryRow["KAPPA_WAVE"]);
                    gates.KappaWave = kappaWave;
                    var kappaLives = intConv(queryRow["KAPPA_LIVES"]);
                    gates.KappaLives = kappaLives;

                    // LAMBDA Gate
                    var lambdaPrepared = Convert.ToBoolean(intConv(queryRow["LAMBDA_PREPARED"]));
                    gates.LambdaReady = lambdaPrepared;
                    var lambdaWave = intConv(queryRow["LAMBDA_WAVE"]);
                    gates.LambdaWave = lambdaWave;
                    var lambdaLives = intConv(queryRow["LAMBDA_LIVES"]);
                    gates.LambdaLives = lambdaLives;

                    // LAMBDA Gate
                    var hadesPrepared = Convert.ToBoolean(intConv(queryRow["HADES_PREPARED"]));
                    gates.HadesReady = hadesPrepared;
                    var hadesWave = intConv(queryRow["HADES_WAVE"]);
                    gates.HadesWave = hadesWave;
                    var hadesLives = intConv(queryRow["HADES_LIVES"]);
                    gates.HadesLives = hadesLives;

                    return(gates);
                }
            }
            catch (Exception)
            {
                Out.QuickLog("Critical error occured", LogKeys.ERROR_LOG);
            }

            return(null);
        }