Example #1
0
        public void Load()
        {
            s_Log.InfoFormat("Load: timed effects".Color(LogColor.orange));
            var       app   = nebulaObject.mmoWorld().application;
            bool      isNew = false;
            Hashtable save  = TimedEffectsDatabase.instance(app).LoadTimedEffects(GetComponent <PlayerCharacterObject>().characterId, nebulaObject.resource as Res, out isNew);

            if (save != null)
            {
                foreach (DictionaryEntry entry in save)
                {
                    switch ((TimedEffectType)(int)entry.Key)
                    {
                    case TimedEffectType.exp: {
                        Hashtable expEffectSave = entry.Value as Hashtable;
                        if (expEffectSave != null)
                        {
                            ExpTimedEffect effect = new ExpTimedEffect();
                            effect.ParseInfo(expEffectSave);
                            m_Effects.TryAdd(effect.type, effect);
                            s_Log.InfoFormat("loaded: " + effect.ToString().Color(LogColor.orange));
                        }
                    }

                    break;
                    }
                }
            }


            CheckEffects();
        }
Example #2
0
        public void SaveTimedEffects()
        {
            log.InfoFormat("save timed effects....".Color(LogColor.orange));
            var character = GetComponent <PlayerCharacterObject>();

            if (character == null)
            {
                return;
            }
            var app = nebulaObject.mmoWorld().application;

            TimedEffectsDatabase.instance(app).SaveTimedEffects(character.characterId, player.GetComponent <PlayerTimedEffects>().GetInfo());
        }
Example #3
0
        public void Save(bool forceSaveToDB)
        {
            if (mLoaded)
            {
                if (player == null)
                {
                    return;
                }
                var character = GetComponent <PlayerCharacterObject>();
                if (character == null)
                {
                    return;
                }

                try {
                    var app = nebulaObject.mmoWorld().application;
                    InventoryDatabase.instance(app).SaveInventory(character.characterId, player.Inventory);
                    StationDatabase.instance(app).SaveStation(character.characterId, player.Station);
                    CharacterDatabase.instance(app).SaveCharacter(character.characterId, player.GetPlayerCharacter());
                    ShipModelDatabase.instance(app).SaveShipModel(character.characterId, GetComponent <PlayerShip>().shipModel);
                    SkillDatabase.instance(app).SaveSkills(character.characterId, GetComponent <PlayerSkills>().GetSave());
                    WeaponDatabase.instance(app).SaveWeapon(character.characterId, player.GetComponent <ShipWeapon>().GetSave());
                    PassiveBonusesDatabase.instance(app).SavePassiveBonuses(character.characterId, player.GetComponent <PassiveBonusesComponent>().GetSave());
                    TimedEffectsDatabase.instance(app).SaveTimedEffects(character.characterId, player.GetComponent <PlayerTimedEffects>().GetInfo());
                    PetDatabase.instance(app).SavePets(character.characterId, player.GetComponent <PetManager>().pets);
                    ContractDatabase.instance(app).SaveContracts(character.characterId, player.GetComponent <ContractManager>().GetSave());
                    AchievmentDatabase.instance(app).SaveAchievment(character.characterId, player.GetComponent <AchievmentComponent>().GetSave());
                    QuestDatabase.instance(app).SaveQuests(character.characterId, player.GetComponent <QuestManager>().GetSave());
                    //QuestDatabase.instance(app).SaveQuests(character.characterId, player.GetComponent<QuestManager>().GetInfo());
                    //DialogDatabase.instance(app).SaveDialogs(character.characterId, player.GetComponent<DialogManager>().GetInfo());
                } catch (Exception exception) {
                    log.Error("handled exception at Player Loaded Object");
                    log.Error(exception.Message);
                    log.Error(exception.StackTrace);
                }
            }
        }