/// <summary>
        /// Finishes this instance.
        /// </summary>
        internal void Finish()
        {
            if (this.Sailing)
            {
                this.Timer.StopTimer();

                LogicGlobalData globals = (LogicGlobalData)CSV.Tables.Get(Gamefile.Globals).GetDataByName("SHIP_SEASICK_DURATION_HOURS");
                this.Avatar.Seasick = globals.NumberValue;

                this.Avatar.Variables.Set(LogicVariables.SailRewardUnclaimed.GlobalID, 0);

                foreach (Item hero in this.Heroes.Values)
                {
                    this.Avatar.HeroTired.AddItem(hero.Id, hero.Count);
                }

                this.Avatar.Save();
            }
        }
Пример #2
0
        /// <summary>
        /// Creates the data for the specified row.
        /// </summary>
        internal LogicData Create(Row row)
        {
            LogicData data;

            switch (this.Index)
            {
            case 1:
            {
                data = new LogicLocaleData(row, this);
                break;
            }

            case 2:
            {
                data = new LogicResourceData(row, this);
                break;
            }

            case 3:
            {
                data = new LogicEffectData(row, this);
                break;
            }

            case 4:
            {
                data = new LogicParticleEmitterData(row, this);
                break;
            }

            case 5:
            {
                data = new LogicGlobalData(row, this);
                break;
            }

            case 6:
            {
                data = new LogicQuestData(row, this);
                break;
            }

            case 8:
            {
                data = new LogicAchievementData(row, this);
                break;
            }

            case 10:
            {
                data = new LogicWorldData(row, this);
                break;
            }

            case 11:
            {
                data = new LogicHeroData(row, this);
                break;
            }

            case 12:
            {
                data = new LogicExperienceLevelData(row, this);
                break;
            }

            case 13:
            {
                data = new LogicLeagueData(row, this);
                break;
            }

            case 21:
            {
                data = new LogicAllianceBadgeData(row, this);
                break;
            }

            case 24:
            {
                data = new LogicTauntData(row, this);
                break;
            }

            case 25:
            {
                data = new LogicDecoData(row, this);
                break;
            }

            case 26:
            {
                data = new LogicVariableData(row, this);
                break;
            }

            case 28:
            {
                data = new LogicBoosterData(row, this);
                break;
            }

            case 32:
            {
                data = new LogicEnergyPackageData(row, this);
                break;
            }

            case 35:
            {
                data = new LogicSpellData(row, this);
                break;
            }

            case 36:
            {
                data = new LogicObstacleData(row, this);
                break;
            }

            case 37:
            {
                data = new LogicItemsData(row, this);
                break;
            }

            default:
            {
                data = new LogicData(row, this);
                break;
            }
            }

            return(data);
        }