Beispiel #1
0
 public static void LoadGeneralSettings1(ItemInfo item, List <string> values)
 {
     item.itemType          = (ItemType)CSVReader.GetInt(values[0]);
     item.version           = CSVReader.GetInt(values[1].Trim('v'));
     item.id                = CSVReader.GetInt(values[2]);
     item.name              = CSVReader.GetQuotedString(values[3]);
     item.category          = CSVReader.GetQuotedString(values[4]);
     item.skillLogic        = CSVReader.GetQuotedString(values[5]);
     item.description       = CSVReader.GetQuotedString(values[6]);
     item.weight            = CSVReader.GetFloat(values[7]);
     item.buyPrice          = CSVReader.GetInt(values[8]);
     item.probability       = CSVReader.GetInt(values[9]);
     item.droppable         = CSVReader.GetBool(values[10]);
     item.keyPreference     = CSVReader.GetInt(values[11]);
     item.recommended       = CSVReader.GetInt(values[12]);
     item.maxAllowed        = CSVReader.GetInt(values[13]);
     item.pickupMode        = (PickupMode)CSVReader.GetInt(values[14]);
     item.sellPrice         = CSVReader.GetInt(values[15]);
     item.expireTimer       = CSVReader.GetInt(values[16]);
     item.radarColor        = CSVReader.GetInt(values[17]);
     item.prizeBountyPoints = CSVReader.GetInt(values[18]);
     item.relativeID        = CSVReader.GetInt(values[19]);
     item.heldCategoryType  = CSVReader.GetInt(values[20]);
     item.pruneDropPercent  = CSVReader.GetInt(values[21]);
     item.pruneOdds         = CSVReader.GetInt(values[22]);
 }
Beispiel #2
0
            /// <summary>
            /// Extracts properties for a Sound object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Sound object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                SoundData.Frequency          = CSVReader.GetInt(values[10]);
                SoundData.PlayOdds           = CSVReader.GetInt(values[11]);
                SoundData.IsTriggeredOnEntry = CSVReader.GetBool(values[12]);
                SoundData.TriggerDelay       = CSVReader.GetInt(values[13]);
                SoundData.SoundVolume        = CSVReader.GetInt(values[14]);
                SoundData.MinPlayerCount     = CSVReader.GetInt(values[15]);
                SoundData.MaxPlayerCount     = CSVReader.GetInt(values[16]);
                SoundData.InactiveFrame      = CSVReader.GetInt(values[17]);
                SoundData.SoundGfxBlobName   = CSVReader.GetQuotedString(values[18]);
                SoundData.SoundGfxBlobId     = CSVReader.GetQuotedString(values[19]);
                SoundData.LightPermutation   = CSVReader.GetInt(values[20]);
                SoundData.PaletteOffset      = CSVReader.GetInt(values[21]);
                SoundData.Hue           = CSVReader.GetInt(values[22]);
                SoundData.Saturation    = CSVReader.GetInt(values[23]);
                SoundData.Value         = CSVReader.GetInt(values[24]);
                SoundData.AnimationTime = CSVReader.GetInt(values[25]);
                SoundData.SoundBlobName = CSVReader.GetQuotedString(values[26]);
                SoundData.SoundBlobId   = CSVReader.GetQuotedString(values[27]);
                SoundData.Simultaneous  = CSVReader.GetInt(values[28]);

                //Load the blobs
                BlobsToLoad.Add(SoundData.SoundBlobName);
                BlobsToLoad.Add(SoundData.SoundGfxBlobName);
            }
Beispiel #3
0
            /// <summary>
            /// Extracts properties for a Door object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Door object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                DoorData.RelativePhysicsTileX     = CSVReader.GetInt(values[10]);
                DoorData.RelativePhysicsTileY     = CSVReader.GetInt(values[11]);
                DoorData.PhysicsWidth             = CSVReader.GetInt(values[12]);
                DoorData.PhysicsHeight            = CSVReader.GetInt(values[13]);
                DoorData.OpenOdds                 = CSVReader.GetInt(values[14]);
                DoorData.LinkedDoorId             = CSVReader.GetInt(values[15]);
                DoorData.InitialState             = CSVReader.GetInt(values[16]);
                DoorData.InverseState             = CSVReader.GetInt(values[17]);
                DoorData.GfxHorizontalTopBlobName = CSVReader.GetQuotedString(values[18]);
                DoorData.GfxHorizontalTopBlobId   = CSVReader.GetQuotedString(values[19]);
                DoorData.LightPermutation         = CSVReader.GetInt(values[20]);
                DoorData.PaletteOffset            = CSVReader.GetInt(values[21]);
                DoorData.Hue                = CSVReader.GetInt(values[22]);
                DoorData.Value              = CSVReader.GetInt(values[23]);
                DoorData.Saturation         = CSVReader.GetInt(values[24]);
                DoorData.AnimationTime      = CSVReader.GetInt(values[25]);
                DoorData.SoundOpenBlobName  = CSVReader.GetQuotedString(values[26]);
                DoorData.SoundOpenBlobId    = CSVReader.GetQuotedString(values[27]);
                DoorData.OpenSimultaneous   = CSVReader.GetInt(values[28]);
                DoorData.SoundCloseBlobName = CSVReader.GetQuotedString(values[30]);
                DoorData.SoundCloseBlobId   = CSVReader.GetQuotedString(values[31]);
                DoorData.CloseSimultaneous  = CSVReader.GetInt(values[32]);

                //Load the blobs
                BlobsToLoad.Add(DoorData.GfxHorizontalTopBlobName);
                BlobsToLoad.Add(DoorData.SoundCloseBlobName);
                BlobsToLoad.Add(DoorData.SoundOpenBlobName);
            }
        /// <summary>
        ///
        /// </summary>
        /// <param name="lines"></param>
        /// <returns></returns>
        protected static List <LioInfo> CreateLioList(List <List <String> > lines)
        {
            List <LioInfo> lios = new List <LioInfo>();

            foreach (List <String> values in lines)
            {
                LioInfo lio;

                switch (CSVReader.GetInt(values[0]))
                {
                case (int)Types.Door:
                    lio = new Door();
                    break;

                case (int)Types.Flag:
                    lio = new Flag();
                    break;

                case (int)Types.Hide:
                    lio = new Hide();
                    break;

                case (int)Types.Nested:
                    lio = new Nested();
                    break;

                case (int)Types.Parallax:
                    lio = new Parallax();
                    break;

                case (int)Types.Portal:
                    lio = new Portal();
                    break;

                case (int)Types.Sound:
                    lio = new Sound();
                    break;

                case (int)Types.Switch:
                    lio = new Switch();
                    break;

                case (int)Types.Text:
                    lio = new Text();
                    break;

                case (int)Types.WarpField:
                    lio = new WarpField();
                    break;

                default:
                    throw new InvalidDataException("No valid type provided to LioInfo");
                }

                lio.ExtractCsvLine(values);
                lios.Add(lio);
            }

            return(lios);
        }
Beispiel #5
0
            /// <summary>
            /// Extracts properties for a Nested object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Nested object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                GeneralData.Version = CSVReader.GetString(values[1]);
                GeneralData.Id      = CSVReader.GetInt(values[2]);
                GeneralData.Name    = CSVReader.GetString(values[3]);

                NestedData.NestedLioFileName = CSVReader.GetQuotedString(values[4]);
            }
            /// <summary>
            /// Extracts properties for a Text object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Text object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                TextData.Color     = CSVReader.GetInt(values[10]);
                TextData.Frequency = CSVReader.GetInt(values[11]);
                TextData.Text      = CSVReader.GetQuotedString(values[12]);
            }
            public static ItemMaker Load(List <string> values)
            {
                ItemMaker item = new ItemMaker();

                item.iconGraphic    = new Graphics(ref values, 23);
                item.prefireGraphic = new Graphics(ref values, 71);
                item.prefireSound   = new Sound(ref values, 79);
                ItemInfo.LoadGeneralSettings1((ItemInfo)item, values);

                item.useAmmoID                      = CSVReader.GetInt(values[31]);
                item.ammoUsedPerShot                = CSVReader.GetInt(values[32]);
                item.ammoCapacity                   = CSVReader.GetInt(values[33]);
                item.requiredItem                   = CSVReader.GetInt(values[34]);
                item.requiredItemAmount             = CSVReader.GetInt(values[35]);
                item.energyCostTerrain0             = CSVReader.GetInt(values[36]);
                item.energyCostTerrain1             = CSVReader.GetInt(values[37]);
                item.energyCostTerrain2             = CSVReader.GetInt(values[38]);
                item.energyCostTerrain3             = CSVReader.GetInt(values[39]);
                item.energyCostTerrain4             = CSVReader.GetInt(values[40]);
                item.energyCostTerrain5             = CSVReader.GetInt(values[41]);
                item.energyCostTerrain6             = CSVReader.GetInt(values[42]);
                item.energyCostTerrain7             = CSVReader.GetInt(values[43]);
                item.energyCostTerrain8             = CSVReader.GetInt(values[44]);
                item.energyCostTerrain9             = CSVReader.GetInt(values[45]);
                item.energyCostTerrain10            = CSVReader.GetInt(values[46]);
                item.energyCostTerrain11            = CSVReader.GetInt(values[47]);
                item.energyCostTerrain12            = CSVReader.GetInt(values[48]);
                item.energyCostTerrain13            = CSVReader.GetInt(values[49]);
                item.energyCostTerrain14            = CSVReader.GetInt(values[50]);
                item.energyCostTerrain15            = CSVReader.GetInt(values[51]);
                item.secondShotEnergy               = CSVReader.GetInt(values[52]);
                item.secondShotTimeout              = CSVReader.GetInt(values[53]);
                item.fireDelay                      = CSVReader.GetInt(values[54]);
                item.fireDelayOther                 = CSVReader.GetInt(values[55]);
                item.maxFireDelay                   = CSVReader.GetInt(values[56]);
                item.entryFireDelay                 = CSVReader.GetInt(values[57]);
                item.reloadDelayNormal              = CSVReader.GetInt(values[58]);
                item.reloadDelayPartial             = CSVReader.GetInt(values[59]);
                item.reloadDelayAsynchronous        = CSVReader.GetInt(values[60]);
                item.reloadDelayAsynchronousPartial = CSVReader.GetInt(values[61]);
                item.routeRange                     = CSVReader.GetInt(values[62]);
                item.routeRotationalRange           = CSVReader.GetInt(values[63]);
                item.routeFriendly                  = CSVReader.GetBool(values[65]);
                item.recoil                 = CSVReader.GetInt(values[66]);
                item.verticalRecoil         = CSVReader.GetInt(values[67]);
                item.prefireDelay           = CSVReader.GetInt(values[68]);
                item.reliability            = CSVReader.GetInt(values[69]);
                item.reliabilityFireDelay   = CSVReader.GetInt(values[70]);
                item.movementCancelsPrefire = CSVReader.GetBool(values[83]);
                item.notifyOthersOfPrefire  = CSVReader.GetBool(values[84]);
                item.cashCost               = CSVReader.GetInt(values[85]);
                item.useWhileCarryingBall   = CSVReader.GetBool(values[86]);
                item.useWhileCarryingFlag   = CSVReader.GetBool(values[87]);
                item.itemMakerItemID        = CSVReader.GetInt(values[93]);
                item.itemMakerQuantity      = CSVReader.GetInt(values[94]);

                return(item);
            }
 public Sound(ref List <string> values, int start)
 {
     blobName        = CSVReader.GetString(values[start]);
     blobID          = CSVReader.GetString(values[start + 1]);
     maxSimultaneous = CSVReader.GetInt(values[start + 2]);
     if (blobID == "2")
     {
         Console.Write("Found blob id '{0}', {1},{2},{3} ", blobName, blobName, blobID, maxSimultaneous);
     }
 }
Beispiel #9
0
 public Graphics(ref List <string> values, int start)
 {
     blobName         = CSVReader.GetString(values[start]);
     blobID           = CSVReader.GetString(values[start + 1]);
     lightPermutation = CSVReader.GetInt(values[start + 2]);
     paletteOffset    = CSVReader.GetInt(values[start + 3]);
     hue           = CSVReader.GetInt(values[start + 4]);
     saturation    = CSVReader.GetInt(values[start + 5]);
     value         = CSVReader.GetInt(values[start + 6]);
     animationTime = CSVReader.GetInt(values[start + 7]);
 }
            public static NestedItem Load(List <string> values)
            {
                NestedItem item = new NestedItem();

                item.id       = CSVReader.GetInt(values[0]);
                item.version  = CSVReader.GetInt(values[1].Trim('v'));
                item.itemID   = CSVReader.GetInt(values[2]);
                item.name     = CSVReader.GetString(values[3]);
                item.location = CSVReader.GetString(values[4]);
                return(item);
            }
Beispiel #11
0
 /// <summary>
 /// Extracts properties for this object from a CSV-formatted line.
 /// </summary>
 /// <param name="values">CSV-formatted line containing properties of this object</param>
 public virtual void ExtractCsvLine(List <string> values)
 {
     GeneralData.Version       = CSVReader.GetString(values[1]);
     GeneralData.Id            = CSVReader.GetInt(values[2]);
     GeneralData.Name          = CSVReader.GetString(values[3]);
     GeneralData.OffsetX       = (short)CSVReader.GetInt(values[4]);
     GeneralData.OffsetY       = (short)CSVReader.GetInt(values[5]);
     GeneralData.Width         = (short)CSVReader.GetInt(values[6]);
     GeneralData.Height        = (short)CSVReader.GetInt(values[7]);
     GeneralData.RelativeId    = CSVReader.GetInt(values[8]);
     GeneralData.HuntFrequency = CSVReader.GetInt(values[9]);
 }
Beispiel #12
0
            /// <summary>
            /// Extracts properties for a WarpField object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a WarpField object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                WarpFieldData.MinPlayerCount    = CSVReader.GetInt(values[10]);
                WarpFieldData.MaxPlayerCount    = CSVReader.GetInt(values[11]);
                WarpFieldData.MinPlayersInArea  = CSVReader.GetInt(values[12]);
                WarpFieldData.MaxPlayersInArea  = CSVReader.GetInt(values[13]);
                WarpFieldData.WarpGroup         = CSVReader.GetInt(values[14]);
                WarpFieldData.WarpMode          = (WarpMode)CSVReader.GetInt(values[15]);
                WarpFieldData.WarpModeParameter = CSVReader.GetInt(values[16]);
                WarpFieldData.SkillLogic        = CSVReader.GetQuotedString(values[17]);
            }
            public static UtilityItem Load(List <string> values)
            {
                UtilityItem item = new UtilityItem();

                item.iconGraphic   = new Graphics(ref values, 23);
                item.activateSound = new Sound(ref values, 48);
                ItemInfo.LoadGeneralSettings1((ItemInfo)item, values);
                item.maxSlotted             = CSVReader.GetInt(values[31]);
                item.maxSlottedCategoryCode = CSVReader.GetInt(values[32]);
                item.extraCapacity          = CSVReader.GetInt(values[33]);
                item.rechargeRate           = CSVReader.GetInt(values[34]);
                item.stealthDistance        = CSVReader.GetInt(values[35]);
                item.cloakDistance          = CSVReader.GetInt(values[36]);
                item.antiStealthDistance    = CSVReader.GetInt(values[37]);
                item.antiCloakDistance      = CSVReader.GetInt(values[38]);
                item.antiWarpDistance       = CSVReader.GetInt(values[39]);
                item.stealthDistanceTime    = CSVReader.GetInt(values[40]);
                item.cloakDistanceTime      = CSVReader.GetInt(values[41]);
                item.vehicleTopSpeed        = CSVReader.GetInt(values[42]);
                item.vehicleHyperTopSpeed   = CSVReader.GetInt(values[43]);
                item.vehicleThrust          = CSVReader.GetInt(values[44]);
                item.vehicleRotate          = CSVReader.GetInt(values[45]);
                item.soccerThrowTimer       = CSVReader.GetInt(values[46]);
                item.startMode          = (StartMode)CSVReader.GetInt(values[47]);
                item.kineticIgnore      = CSVReader.GetInt(values[52]);
                item.kineticPercent     = CSVReader.GetInt(values[53]);
                item.explosiveIgnore    = CSVReader.GetInt(values[54]);
                item.explosivePercent   = CSVReader.GetInt(values[55]);
                item.electronicIgnore   = CSVReader.GetInt(values[56]);
                item.electronicPercent  = CSVReader.GetInt(values[57]);
                item.psionicIgnore      = CSVReader.GetInt(values[58]);
                item.psionicPercent     = CSVReader.GetInt(values[59]);
                item.bypassIgnore       = CSVReader.GetInt(values[60]);
                item.bypassPercent      = CSVReader.GetInt(values[61]);
                item.energyIgnore       = CSVReader.GetInt(values[62]);
                item.energyPercent      = CSVReader.GetInt(values[63]);
                item.losDistance        = CSVReader.GetInt(values[124]);
                item.losAngle           = CSVReader.GetInt(values[125]);
                item.losXray            = CSVReader.GetInt(values[126]);
                item.losDistancePercent = CSVReader.GetInt(values[127]);
                item.losAnglePercent    = CSVReader.GetInt(values[128]);
                item.combatAwareness    = CSVReader.GetInt(values[129]);
                item.radarPrizeDistance = CSVReader.GetInt(values[130]);
                item.normalWeight       = CSVReader.GetInt(values[131]);
                item.stopWeight         = CSVReader.GetInt(values[132]);
                item.strafeThrust       = CSVReader.GetInt(values[133]);
                item.forwardThrust      = CSVReader.GetInt(values[134]);
                item.reverseThrust      = CSVReader.GetInt(values[135]);
                item.soccerCatchRadius  = CSVReader.GetInt(values[136]);
                return(item);
            }
            public static SkillItem Load(List <string> values)
            {
                SkillItem item = new SkillItem();

                item.iconGraphic = new Graphics(ref values, 23);
                ItemInfo.LoadGeneralSettings1((ItemInfo)item, values);
                int currentPlace = 31;

                for (int i = 0; i < 15; i++)
                {
                    Skill child = new Skill();
                    child.logic   = CSVReader.GetQuotedString(values[currentPlace + 0]);
                    child.ID      = CSVReader.GetInt(values[currentPlace + 1]);
                    currentPlace += 2;
                    item.skills.Add(child);
                }
                return(item);
            }
Beispiel #15
0
            /// <summary>
            /// Extracts properties for a Switch object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Switch object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                SwitchData.Switch = CSVReader.GetInt(values[10]);

                for (int i = 0; i < 16; i++)
                {
                    SwitchData.SwitchLioId[i] = CSVReader.GetInt(values[11 + i]);
                }

                SwitchData.SwitchDelay     = CSVReader.GetInt(values[27]);
                SwitchData.AmmoId          = CSVReader.GetInt(values[28]);
                SwitchData.UseAmmoAmount   = CSVReader.GetInt(values[29]);
                SwitchData.UseEnergyAmount = CSVReader.GetInt(values[30]);
                SwitchData.AutoCloseDelay  = CSVReader.GetInt(values[31]);
                SwitchData.SkillLogic      = CSVReader.GetQuotedString(values[32]);

                SwitchData.Frequency               = CSVReader.GetInt(values[33]);
                SwitchData.AmmoOverridesLogic      = CSVReader.GetBool(values[34]);
                SwitchData.AmmoOverridesFrequency  = CSVReader.GetBool(values[35]);
                SwitchData.FrequencyOverridesAmmo  = CSVReader.GetBool(values[36]);
                SwitchData.FrequencyOverridesLogic = CSVReader.GetBool(values[37]);
                SwitchData.LogicOverridesAmmo      = CSVReader.GetBool(values[38]);
                SwitchData.LogicOverridesFrequency = CSVReader.GetBool(values[39]);

                SwitchData.SwitchGfxBlobName = CSVReader.GetQuotedString(values[40]);
                SwitchData.SwitchGfxBlobId   = CSVReader.GetQuotedString(values[41]);
                SwitchData.LightPermutation  = CSVReader.GetInt(values[42]);
                SwitchData.PaletteOffset     = CSVReader.GetInt(values[43]);
                SwitchData.Hue           = CSVReader.GetInt(values[44]);
                SwitchData.Saturation    = CSVReader.GetInt(values[45]);
                SwitchData.Value         = CSVReader.GetInt(values[46]);
                SwitchData.AnimationTime = CSVReader.GetInt(values[47]);

                SwitchData.SwitchSoundBlobName     = CSVReader.GetQuotedString(values[48]);
                SwitchData.SwitchSoundBlobId       = CSVReader.GetQuotedString(values[49]);
                SwitchData.SwitchSoundSimultaneous = CSVReader.GetInt(values[50]);

                //Load the blobs
                BlobsToLoad.Add(SwitchData.SwitchGfxBlobName);
                BlobsToLoad.Add(SwitchData.SwitchSoundBlobName);
            }
Beispiel #16
0
            /// <summary>
            /// Extracts properties for a Parallax object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Parallax object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                ParallaxData.NearDistance     = CSVReader.GetInt(values[10]);
                ParallaxData.FarDistance      = CSVReader.GetInt(values[11]);
                ParallaxData.Quantity         = CSVReader.GetInt(values[12]);
                ParallaxData.ParallaxBlobName = CSVReader.GetQuotedString(values[13]);
                ParallaxData.ParallaxBlobId   = CSVReader.GetQuotedString(values[14]);
                ParallaxData.LightPermutation = CSVReader.GetInt(values[15]);
                ParallaxData.PaletteOffset    = CSVReader.GetInt(values[16]);
                ParallaxData.Hue           = CSVReader.GetInt(values[17]);
                ParallaxData.Saturation    = CSVReader.GetInt(values[18]);
                ParallaxData.Value         = CSVReader.GetInt(values[19]);
                ParallaxData.AnimationTime = CSVReader.GetInt(values[20]);

                //Load the blobs
                BlobsToLoad.Add(ParallaxData.ParallaxBlobName);
            }
            public static UpgradeItem Load(List <string> values)
            {
                UpgradeItem item = new UpgradeItem();

                item.iconGraphic = new Graphics(ref values, 23);
                ItemInfo.LoadGeneralSettings1((ItemInfo)item, values);

                int currentPlace = 31;

                for (int i = 0; i < 15; i++)
                {
                    Upgrade child = new Upgrade();
                    child.inputID  = CSVReader.GetInt(values[currentPlace + 0]);
                    child.outputID = CSVReader.GetInt(values[currentPlace + 1]);
                    currentPlace  += 2;
                    item.upgrades.Add(child);
                }

                return(item);
            }
Beispiel #18
0
            /// <summary>
            /// Extracts properties for a Portal object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Portal object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                PortalData.Frequency            = CSVReader.GetInt(values[10]);
                PortalData.DestinationWarpGroup = CSVReader.GetInt(values[11]);
                PortalData.SkillLogic           = CSVReader.GetQuotedString(values[12]);
                PortalData.DamageIgnoreTime     = CSVReader.GetInt(values[13]);
                PortalData.ReuseDelay           = CSVReader.GetInt(values[14]);
                PortalData.Gravity = CSVReader.GetInt(values[15]);

                PortalData.PortalGfxBlobName      = CSVReader.GetQuotedString(values[16]);
                PortalData.PortalGfxBlobId        = CSVReader.GetQuotedString(values[17]);
                PortalData.PortalLightPermutation = CSVReader.GetInt(values[18]);
                PortalData.PortalPaletteOffset    = CSVReader.GetInt(values[19]);
                PortalData.PortalHue           = CSVReader.GetInt(values[20]);
                PortalData.Saturation          = CSVReader.GetInt(values[21]);
                PortalData.PortalValue         = CSVReader.GetInt(values[22]);
                PortalData.PortalAnimationTime = CSVReader.GetInt(values[23]);

                PortalData.RadarGfxBlobName      = CSVReader.GetQuotedString(values[24]);
                PortalData.RadarGfxBlobId        = CSVReader.GetQuotedString(values[25]);
                PortalData.RadarLightPermutation = CSVReader.GetInt(values[26]);
                PortalData.RadarPaletteOffset    = CSVReader.GetInt(values[27]);
                PortalData.RadarHue           = CSVReader.GetInt(values[28]);
                PortalData.RadarSaturation    = CSVReader.GetInt(values[29]);
                PortalData.RadarValue         = CSVReader.GetInt(values[30]);
                PortalData.RadarAnimationTime = CSVReader.GetInt(values[31]);

                PortalData.PortalSoundBlobName = CSVReader.GetQuotedString(values[32]);
                PortalData.PortalSoundBlobId   = CSVReader.GetQuotedString(values[33]);
                PortalData.Simultaneous        = CSVReader.GetInt(values[34]);

                //Load the blobs
                BlobsToLoad.Add(PortalData.PortalGfxBlobName);
                BlobsToLoad.Add(PortalData.PortalSoundBlobName);
                BlobsToLoad.Add(PortalData.RadarGfxBlobName);
            }
            /// <summary>
            /// Extracts properties for a Hide object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Hide object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                HideData.InitialCount      = CSVReader.GetInt(values[10]);
                HideData.AttemptDelay      = CSVReader.GetInt(values[11]);
                HideData.SucceedDelay      = CSVReader.GetInt(values[12]);
                HideData.Probability       = CSVReader.GetInt(values[13]);
                HideData.MinPlayers        = CSVReader.GetInt(values[14]);
                HideData.MaxPlayers        = CSVReader.GetInt(values[15]);
                HideData.MinPlayerDistance = CSVReader.GetInt(values[16]);
                HideData.MaxPlayerDistance = CSVReader.GetInt(values[17]);
                HideData.MaxTypeInArea     = CSVReader.GetInt(values[18]);
                HideData.MaxTypeInlevel    = CSVReader.GetInt(values[19]);

                HideData.HideId          = CSVReader.GetInt(values[20]);
                HideData.HideQuantity    = CSVReader.GetInt(values[21]);
                HideData.HideTurretGroup = CSVReader.GetInt(values[22]);
                HideData.HideAnnounce    = CSVReader.GetQuotedString(values[23]);
                HideData.RelativeId      = CSVReader.GetInt(values[24]);

                HideData.AssignFrequency = CSVReader.GetInt(values[25]);
                HideData.ClumpRadius     = CSVReader.GetInt(values[26]);
                HideData.ClumpQuantity   = CSVReader.GetInt(values[27]);
                if (GeneralData.Version != "v25")          // LIO versions are kept in the format 'vXX', VEH records however parse this as an int, shrug
                {
                    HideData.TurretSwitchedFrequency = -2; // default values observed from lio editor
                    HideData.TurretInverseState      = 0;
                    HideData.RtsStateNumber          = -1;
                }
                else
                {
                    HideData.TurretSwitchedFrequency = CSVReader.GetInt(values[28]);
                    HideData.TurretInverseState      = CSVReader.GetInt(values[29]);
                    HideData.RtsStateNumber          = CSVReader.GetInt(values[30]);
                }
            }
            public static MultiItem Load(List <string> values)
            {
                MultiItem multiItem = new MultiItem();

                multiItem.graphic = new Graphics(ref values, 23);
                ItemInfo.LoadGeneralSettings1((ItemInfo)multiItem, values);
                multiItem.Cash       = CSVReader.GetInt(values[31]);
                multiItem.Energy     = CSVReader.GetInt(values[32]);
                multiItem.Health     = CSVReader.GetInt(values[33]);
                multiItem.Repair     = CSVReader.GetInt(values[34]);
                multiItem.Experience = CSVReader.GetInt(values[35]);
                for (int i = 0; i <= 16; i++)
                {
                    int value = CSVReader.GetInt(values[36 + i]);
                    multiItem.slots.Add(new Slot(i, value));
                }

                if (multiItem.version >= 53) // Version == field count??
                {
                    multiItem.ExpandRadius = CSVReader.GetInt(values[52]);
                }

                return(multiItem);
            }
            public static VehicleMaker Load(List <string> values)
            {
                VehicleMaker vehicleMaker = new VehicleMaker();

                vehicleMaker.iconGraphic    = new Graphics(ref values, 23);
                vehicleMaker.prefireGraphic = new Graphics(ref values, 71);
                vehicleMaker.prefireSound   = new Sound(ref values, 79);

                vehicleMaker.itemType                       = (ItemType)CSVReader.GetInt(values[0]);
                vehicleMaker.version                        = CSVReader.GetInt(values[1].Trim('v'));
                vehicleMaker.id                             = CSVReader.GetInt(values[2]);
                vehicleMaker.name                           = CSVReader.GetQuotedString(values[3]);
                vehicleMaker.category                       = CSVReader.GetString(values[4]);
                vehicleMaker.skillLogic                     = CSVReader.GetQuotedString(values[5]);
                vehicleMaker.description                    = CSVReader.GetString(values[6]);
                vehicleMaker.weight                         = CSVReader.GetInt(values[7]);
                vehicleMaker.buyPrice                       = CSVReader.GetInt(values[8]);
                vehicleMaker.probability                    = CSVReader.GetInt(values[9]);
                vehicleMaker.droppable                      = CSVReader.GetBool(values[10]);
                vehicleMaker.keyPreference                  = CSVReader.GetInt(values[11]);
                vehicleMaker.recommended                    = CSVReader.GetInt(values[12]);
                vehicleMaker.maxAllowed                     = CSVReader.GetInt(values[13]);
                vehicleMaker.pickupMode                     = (PickupMode)CSVReader.GetInt(values[14]);
                vehicleMaker.sellPrice                      = CSVReader.GetInt(values[15]);
                vehicleMaker.radarColor                     = CSVReader.GetInt(values[17]);
                vehicleMaker.ammoID                         = CSVReader.GetInt(values[31]);
                vehicleMaker.ammoUsedPerShot                = CSVReader.GetInt(values[32]);
                vehicleMaker.ammoCapacity                   = CSVReader.GetInt(values[33]);
                vehicleMaker.requiredItemID                 = CSVReader.GetInt(values[34]);
                vehicleMaker.requiredItemAmount             = CSVReader.GetInt(values[35]);
                vehicleMaker.energyUseTerrain1              = CSVReader.GetInt(values[36]);
                vehicleMaker.energyUseTerrain2              = CSVReader.GetInt(values[37]);
                vehicleMaker.energyUseTerrain3              = CSVReader.GetInt(values[38]);
                vehicleMaker.energyUseTerrain4              = CSVReader.GetInt(values[39]);
                vehicleMaker.energyUseTerrain5              = CSVReader.GetInt(values[40]);
                vehicleMaker.energyUseTerrain6              = CSVReader.GetInt(values[41]);
                vehicleMaker.energyUseTerrain7              = CSVReader.GetInt(values[42]);
                vehicleMaker.energyUseTerrain8              = CSVReader.GetInt(values[43]);
                vehicleMaker.energyUseTerrain9              = CSVReader.GetInt(values[44]);
                vehicleMaker.energyUseTerrain10             = CSVReader.GetInt(values[45]);
                vehicleMaker.energyUseTerrain11             = CSVReader.GetInt(values[46]);
                vehicleMaker.energyUseTerrain12             = CSVReader.GetInt(values[47]);
                vehicleMaker.energyUseTerrain13             = CSVReader.GetInt(values[48]);
                vehicleMaker.energyUseTerrain14             = CSVReader.GetInt(values[49]);
                vehicleMaker.energyUseTerrain15             = CSVReader.GetInt(values[50]);
                vehicleMaker.energyUseTerrain16             = CSVReader.GetInt(values[51]);
                vehicleMaker.secondShotEnergy               = CSVReader.GetInt(values[52]);
                vehicleMaker.secondShotTimeout              = CSVReader.GetInt(values[53]);
                vehicleMaker.fireDelay                      = CSVReader.GetInt(values[54]);
                vehicleMaker.fireDelayOther                 = CSVReader.GetInt(values[55]);
                vehicleMaker.maxFireDelay                   = CSVReader.GetInt(values[56]);
                vehicleMaker.entryFireDelay                 = CSVReader.GetInt(values[57]);
                vehicleMaker.normalReloadDelay              = CSVReader.GetInt(values[58]);
                vehicleMaker.partialReloadDelay             = CSVReader.GetInt(values[59]);
                vehicleMaker.asynchronousReloadDelay        = CSVReader.GetInt(values[60]);
                vehicleMaker.asynchronousPartialReloadDelay = CSVReader.GetInt(values[61]);
                vehicleMaker.routeRange                     = CSVReader.GetInt(values[62]);
                vehicleMaker.routeRotationalRange           = CSVReader.GetInt(values[63]);
                vehicleMaker.routeFriendly                  = CSVReader.GetBool(values[65]);
                vehicleMaker.recoil                         = CSVReader.GetInt(values[66]);
                vehicleMaker.verticalRecoil                 = CSVReader.GetInt(values[67]);
                vehicleMaker.prefireDelay                   = CSVReader.GetInt(values[68]);
                vehicleMaker.reliabilityMisfire             = CSVReader.GetInt(values[69]);
                vehicleMaker.reliabilityMisfireFireDelay    = CSVReader.GetInt(values[70]);
                vehicleMaker.movementCancelsPrefire         = CSVReader.GetInt(values[83]);
                vehicleMaker.prefireNotify                  = CSVReader.GetInt(values[84]);
                vehicleMaker.cashCost                       = CSVReader.GetInt(values[85]);
                vehicleMaker.useWhileCarryingBall           = CSVReader.GetInt(values[86]);
                vehicleMaker.useWhileCarryingFlag           = CSVReader.GetInt(values[87]);
                vehicleMaker.soccerThrow                    = CSVReader.GetInt(values[88]);
                vehicleMaker.soccerBallFriction             = CSVReader.GetInt(values[89]);
                vehicleMaker.soccerBallSpeed                = CSVReader.GetInt(values[90]);
                vehicleMaker.soccerLowFireAngle             = CSVReader.GetInt(values[91]);
                vehicleMaker.soccerHighFireAngle            = CSVReader.GetInt(values[92]);
                vehicleMaker.vehicleID                      = CSVReader.GetInt(values[93]);

                return(vehicleMaker);
            }
Beispiel #22
0
            public static Projectile Load(List <string> values)
            {
                Projectile projectile = new Projectile();

                projectile.iconGraphic       = new Graphics(ref values, 23);
                projectile.fireGraphic       = new Graphics(ref values, 175);
                projectile.projectileGraphic = new Graphics(ref values, 183);
                projectile.shadowGraphic     = new Graphics(ref values, 191);
                projectile.trailGraphic      = new Graphics(ref values, 199);
                projectile.explosionGraphic  = new Graphics(ref values, 207);
                projectile.prefireGraphic    = new Graphics(ref values, 71);
                projectile.firingSound       = new Sound(ref values, 215);
                projectile.explosionSound    = new Sound(ref values, 219);
                projectile.bounceSound       = new Sound(ref values, 223);
                projectile.prefireSound      = new Sound(ref values, 79);
                ItemInfo.LoadGeneralSettings1((ItemInfo)projectile, values);
                projectile.useAmmoID                      = CSVReader.GetInt(values[31]);
                projectile.ammoUsedPerShot                = CSVReader.GetInt(values[32]);
                projectile.ammoCapacity                   = CSVReader.GetInt(values[33]);
                projectile.requiredItem                   = CSVReader.GetInt(values[34]);
                projectile.requiredItemAmount             = CSVReader.GetInt(values[35]);
                projectile.terrain0EnergyCost             = CSVReader.GetInt(values[36]);
                projectile.terrain1EnergyCost             = CSVReader.GetInt(values[37]);
                projectile.terrain2EnergyCost             = CSVReader.GetInt(values[38]);
                projectile.terrain3EnergyCost             = CSVReader.GetInt(values[39]);
                projectile.terrain4EnergyCost             = CSVReader.GetInt(values[40]);
                projectile.terrain5EnergyCost             = CSVReader.GetInt(values[41]);
                projectile.terrain6EnergyCost             = CSVReader.GetInt(values[42]);
                projectile.terrain7EnergyCost             = CSVReader.GetInt(values[43]);
                projectile.terrain8EnergyCost             = CSVReader.GetInt(values[44]);
                projectile.terrain9EnergyCost             = CSVReader.GetInt(values[45]);
                projectile.terrain10EnergyCost            = CSVReader.GetInt(values[46]);
                projectile.terrain11EnergyCost            = CSVReader.GetInt(values[47]);
                projectile.terrain12EnergyCost            = CSVReader.GetInt(values[48]);
                projectile.terrain13EnergyCost            = CSVReader.GetInt(values[49]);
                projectile.terrain14EnergyCost            = CSVReader.GetInt(values[50]);
                projectile.terrain15EnergyCost            = CSVReader.GetInt(values[51]);
                projectile.secondShotEnergy               = CSVReader.GetInt(values[52]);
                projectile.secondShotTimeout              = CSVReader.GetInt(values[53]);
                projectile.fireDelay                      = CSVReader.GetInt(values[54]);
                projectile.fireDelayOther                 = CSVReader.GetInt(values[55]);
                projectile.maxFireDelay                   = CSVReader.GetInt(values[56]);
                projectile.entryFireDelay                 = CSVReader.GetInt(values[57]);
                projectile.reloadDelayNormal              = CSVReader.GetInt(values[58]);
                projectile.reloadDelayPartial             = CSVReader.GetInt(values[59]);
                projectile.reloadDelayAsyncronous         = CSVReader.GetInt(values[60]);
                projectile.reloadDelayAsynchronousPartial = CSVReader.GetInt(values[61]);
                projectile.routeRange                     = CSVReader.GetInt(values[62]);
                projectile.routeRotationalRange           = CSVReader.GetInt(values[63]);
                projectile.routeFriendly                  = CSVReader.GetBool(values[65]);
                projectile.recoil                          = CSVReader.GetInt(values[66]);
                projectile.verticle                        = CSVReader.GetInt(values[67]);
                projectile.prefireDelay                    = CSVReader.GetInt(values[68]);
                projectile.reliability                     = CSVReader.GetInt(values[69]);
                projectile.reliabilityFireDelay            = CSVReader.GetInt(values[70]);
                projectile.movementCancelsPrefire          = CSVReader.GetBool(values[83]);
                projectile.notifyOthersOfPrefire           = CSVReader.GetBool(values[84]);
                projectile.cashCost                        = CSVReader.GetInt(values[85]);
                projectile.useWhileCarryingBall            = CSVReader.GetBool(values[86]);
                projectile.useWhileCarryingFlag            = CSVReader.GetBool(values[87]);
                projectile.soccerThrow                     = CSVReader.GetInt(values[88]);
                projectile.soccerBallFriction              = CSVReader.GetInt(values[89]);
                projectile.soccerBallSpeed                 = CSVReader.GetInt(values[90]);
                projectile.soccerLowFireAngle              = CSVReader.GetInt(values[91]);
                projectile.soccerHighFireAngle             = CSVReader.GetInt(values[92]);
                projectile.horizontalFriction              = CSVReader.GetInt(values[93]);
                projectile.inheritedSpeed                  = CSVReader.GetInt(values[94]);
                projectile.inheritZSpeed                   = CSVReader.GetInt(values[95]);
                projectile.startHeightAdjust               = CSVReader.GetInt(values[96]);
                projectile.lowRotationAngle                = CSVReader.GetInt(values[97]);
                projectile.highRotationAngle               = CSVReader.GetInt(values[98]);
                projectile.lowFireAngle                    = CSVReader.GetInt(values[99]);
                projectile.highFireAngle                   = CSVReader.GetInt(values[100]);
                projectile.muzzleVelocity                  = CSVReader.GetInt(values[101]);
                projectile.gravityAcceleration             = CSVReader.GetInt(values[102]);
                projectile.horizontalBounceSpeed           = CSVReader.GetInt(values[103]);
                projectile.bounceCount                     = CSVReader.GetInt(values[104]);
                projectile.floorBounceVerticalSpeed        = CSVReader.GetInt(values[105]);
                projectile.floorBounceHorizontalSpeed      = CSVReader.GetInt(values[106]);
                projectile.floorBounceCount                = CSVReader.GetInt(values[107]);
                projectile.proximityRadius                 = CSVReader.GetInt(values[108]);
                projectile.triggerWeight                   = CSVReader.GetInt(values[109]);
                projectile.aliveTime                       = CSVReader.GetInt(values[110]);
                projectile.rotationalStartTime             = CSVReader.GetInt(values[111]);
                projectile.rotationalEndTime               = CSVReader.GetInt(values[112]);
                projectile.rotationalSpeed                 = CSVReader.GetInt(values[113]);
                projectile.rotationalAcceleration          = CSVReader.GetInt(values[114]);
                projectile.inactiveTime                    = CSVReader.GetInt(values[115]);
                projectile.damageMode                      = CSVReader.GetInt(values[116]);
                projectile.damageAccessible                = CSVReader.GetBool(values[117]);
                projectile.trailDelay                      = CSVReader.GetInt(values[119]);
                projectile.explosionRecoilRadius           = CSVReader.GetInt(values[120]);
                projectile.explosionRecoilVehicleVertical  = CSVReader.GetInt(values[122]);
                projectile.explosionRecoilIgnoreTime       = CSVReader.GetInt(values[123]);
                projectile.explosionRecoilWeapon           = CSVReader.GetInt(values[124]);
                projectile.explosionRecoilWeaponDuration   = CSVReader.GetInt(values[125]);
                projectile.explosionRecoilVehicleAbsolute  = CSVReader.GetBool(values[126]);
                projectile.explosionRecoilWeaponAbsolute   = CSVReader.GetBool(values[127]);
                projectile.explosionRecoilDirectionPercent = CSVReader.GetInt(values[128]);
                projectile.explosionScreenShakeAmount      = CSVReader.GetInt(values[129]);
                projectile.maxLiveCategoryCode             = CSVReader.GetInt(values[130]);
                projectile.maxLivePerPlayer                = CSVReader.GetInt(values[131]);
                projectile.maxLivePerTeam                  = CSVReader.GetInt(values[132]);
                projectile.maxLivePerLevel                 = CSVReader.GetInt(values[133]);
                projectile.antiEffectsRadius               = CSVReader.GetInt(values[134]);
                projectile.antiEffectsRecharge             = CSVReader.GetInt(values[135]);
                projectile.antiEffectsFire                 = CSVReader.GetInt(values[136]);
                projectile.antiEffectsThrust               = CSVReader.GetInt(values[137]);
                projectile.antiEffectsRotate               = CSVReader.GetInt(values[138]);
                projectile.antiEffectsBallPickupDuration   = CSVReader.GetInt(values[139]);
                projectile.antiEffectsBallThrowDuration    = CSVReader.GetInt(values[140]);
                projectile.preventPointBlank               = CSVReader.GetInt(values[141]);
                projectile.explodeItem                     = CSVReader.GetInt(values[142]);
                projectile.projectileRadarMode             = CSVReader.GetInt(values[143]);
                projectile.damageEventRadius               = CSVReader.GetInt(values[146]);
                projectile.damageEventString               = CSVReader.GetString(values[147]);
                projectile.portalGravity                   = CSVReader.GetBool(values[148]);
                projectile.vehicleGravity                  = CSVReader.GetInt(values[150]);
                projectile.kineticDamageRadius             = CSVReader.GetInt(values[151]);
                projectile.kineticDamageInner              = CSVReader.GetInt(values[152]);
                projectile.kineticDamageOuter              = CSVReader.GetInt(values[153]);
                projectile.kineticDamageMode               = CSVReader.GetInt(values[154]);
                projectile.explosiveDamageRadius           = CSVReader.GetInt(values[155]);
                projectile.explosiveDamageInner            = CSVReader.GetInt(values[156]);
                projectile.explosiveDamageOuter            = CSVReader.GetInt(values[157]);
                projectile.explosiveDamageMode             = CSVReader.GetInt(values[158]);
                projectile.electronicDamageRadius          = CSVReader.GetInt(values[159]);
                projectile.electronicDamageInner           = CSVReader.GetInt(values[160]);
                projectile.electronicDamageOuter           = CSVReader.GetInt(values[161]);
                projectile.electronicDamageMode            = CSVReader.GetInt(values[162]);
                projectile.psionicDamageRadius             = CSVReader.GetInt(values[163]);
                projectile.psionicDamageInner              = CSVReader.GetInt(values[164]);
                projectile.psionicDamageOuter              = CSVReader.GetInt(values[165]);
                projectile.psionicDamageMode               = CSVReader.GetInt(values[166]);
                projectile.bypassDamageRadius              = CSVReader.GetInt(values[167]);
                projectile.bypassDamageInner               = CSVReader.GetInt(values[168]);
                projectile.bypassDamageOuter               = CSVReader.GetInt(values[169]);
                projectile.bypassDamageMode                = CSVReader.GetInt(values[170]);
                projectile.energyDamageRadius              = CSVReader.GetInt(values[171]);
                projectile.energyDamageInner               = CSVReader.GetInt(values[172]);
                projectile.energyDamageOuter               = CSVReader.GetInt(values[173]);
                projectile.energyDamageMode                = CSVReader.GetInt(values[174]);



                return(projectile);
            }
Beispiel #23
0
            public static RepairItem Load(List <string> values)
            {
                RepairItem item = new RepairItem();

                item.iconGraphic    = new Graphics(ref values, 23);
                item.prefireGraphic = new Graphics(ref values, 71);
                item.repairGraphic  = new Graphics(ref values, 100);
                item.prefireSound   = new Sound(ref values, 79);
                item.repairSound    = new Sound(ref values, 108);
                ItemInfo.LoadGeneralSettings1((ItemInfo)item, values);

                item.useAmmoID                      = CSVReader.GetInt(values[31]);
                item.ammoUsedPerShot                = CSVReader.GetInt(values[32]);
                item.ammoCapacity                   = CSVReader.GetInt(values[33]);
                item.requiredItem                   = CSVReader.GetInt(values[34]);
                item.requiredItemAmount             = CSVReader.GetInt(values[35]);
                item.energyCostTerrain0             = CSVReader.GetInt(values[36]);
                item.energyCostTerrain1             = CSVReader.GetInt(values[37]);
                item.energyCostTerrain2             = CSVReader.GetInt(values[38]);
                item.energyCostTerrain3             = CSVReader.GetInt(values[39]);
                item.energyCostTerrain4             = CSVReader.GetInt(values[40]);
                item.energyCostTerrain5             = CSVReader.GetInt(values[41]);
                item.energyCostTerrain6             = CSVReader.GetInt(values[42]);
                item.energyCostTerrain7             = CSVReader.GetInt(values[43]);
                item.energyCostTerrain8             = CSVReader.GetInt(values[44]);
                item.energyCostTerrain9             = CSVReader.GetInt(values[45]);
                item.energyCostTerrain10            = CSVReader.GetInt(values[46]);
                item.energyCostTerrain11            = CSVReader.GetInt(values[47]);
                item.energyCostTerrain12            = CSVReader.GetInt(values[48]);
                item.energyCostTerrain13            = CSVReader.GetInt(values[49]);
                item.energyCostTerrain14            = CSVReader.GetInt(values[50]);
                item.energyCostTerrain15            = CSVReader.GetInt(values[51]);
                item.secondShotEnergy               = CSVReader.GetInt(values[52]);
                item.secondShotTimeout              = CSVReader.GetInt(values[53]);
                item.fireDelay                      = CSVReader.GetInt(values[54]);
                item.fireDelayOther                 = CSVReader.GetInt(values[55]);
                item.maxFireDelay                   = CSVReader.GetInt(values[56]);
                item.entryFireDelay                 = CSVReader.GetInt(values[57]);
                item.reloadDelayNormal              = CSVReader.GetInt(values[58]);
                item.reloadDelayPartial             = CSVReader.GetInt(values[59]);
                item.reloadDelayAsynchronous        = CSVReader.GetInt(values[60]);
                item.reloadDelayAsynchronousPartial = CSVReader.GetInt(values[61]);
                item.routeRange                     = CSVReader.GetInt(values[62]);
                item.routeRotationalRange           = CSVReader.GetInt(values[63]);
                item.routeFriendly                  = CSVReader.GetBool(values[65]);
                item.recoil                 = CSVReader.GetInt(values[66]);
                item.verticalRecoil         = CSVReader.GetInt(values[67]);
                item.prefireDelay           = CSVReader.GetInt(values[68]);
                item.reliability            = CSVReader.GetInt(values[69]);
                item.reliabilityFireDelay   = CSVReader.GetInt(values[70]);
                item.movementCancelsPrefire = CSVReader.GetBool(values[83]);
                item.notifyOthersOfPrefire  = CSVReader.GetBool(values[84]);
                item.cashCost               = CSVReader.GetInt(values[85]);
                item.useWhileCarryingBall   = CSVReader.GetBool(values[86]);
                item.useWhileCarryingFlag   = CSVReader.GetBool(values[87]);
                item.soccerThrow            = CSVReader.GetInt(values[88]);
                item.soccerBallFriction     = CSVReader.GetInt(values[89]);
                item.soccerBallSpeed        = CSVReader.GetInt(values[90]);
                item.soccerLowFireAngle     = CSVReader.GetInt(values[91]);
                item.soccerHighFireAngle    = CSVReader.GetInt(values[92]);
                item.repairType             = CSVReader.GetInt(values[93]);
                item.repairAmount           = CSVReader.GetInt(values[94]);
                item.repairPercentage       = CSVReader.GetInt(values[95]);
                item.repairTime             = CSVReader.GetInt(values[96]);
                item.repairDistance         = CSVReader.GetInt(values[97]);
                item.killPotential          = CSVReader.GetInt(values[98]);
                item.repairSelf             = CSVReader.GetBool(values[99]);

                return(item);
            }
Beispiel #24
0
            /// <summary>
            /// Extracts properties for a Flag object from the CSV-formatted line.
            /// </summary>
            /// <param name="values">CSV-formatted line containing properties of a Flag object</param>
            public sealed override void ExtractCsvLine(List <string> values)
            {
                base.ExtractCsvLine(values);

                FlagData.OddsOfAppearance = CSVReader.GetInt(values[10]);
                FlagData.MinPlayerCount   = CSVReader.GetInt(values[11]);
                FlagData.MaxPlayerCount   = CSVReader.GetInt(values[12]);
                FlagData.FriendlyOwnedFlagPlayerVisibility = CSVReader.GetInt(values[13]);
                FlagData.EnemyOwnedFlagPlayerVisibility    = CSVReader.GetInt(values[14]);
                FlagData.UnownedFlagPlayerVisibility       = CSVReader.GetInt(values[15]);
                FlagData.OwnedFlagSpectatorVisibility      = CSVReader.GetInt(values[16]);
                FlagData.UnownedFlagSpectatorVisibility    = CSVReader.GetInt(values[17]);
                FlagData.FriendlyFlagLos = CSVReader.GetInt(values[18]);
                FlagData.EnemyFlagLos    = CSVReader.GetInt(values[19]);
                FlagData.UnownedFlagLos  = CSVReader.GetInt(values[20]);

                FlagData.FlagCarriable          = CSVReader.GetInt(values[21]);
                FlagData.IsFlagOwnedWhenCarried = CSVReader.GetBool(values[22]);
                FlagData.IsFlagOwnedWhenDropped = CSVReader.GetBool(values[23]);

                FlagData.DropDelay      = CSVReader.GetInt(values[24]);
                FlagData.DropDelayReset = CSVReader.GetInt(values[25]);
                FlagData.DropRadius     = CSVReader.GetInt(values[26]);

                FlagData.TransferMode = CSVReader.GetInt(values[27]);

                FlagData.PeriodicPointsReward     = CSVReader.GetInt(values[28]);
                FlagData.PeriodicExperienceReward = CSVReader.GetInt(values[29]);
                FlagData.PeriodicCashReward       = CSVReader.GetInt(values[30]);

                FlagData.PickupDelay = CSVReader.GetInt(values[31]);

                FlagData.FlagOwnerSpecialRadius        = CSVReader.GetInt(values[32]);
                FlagData.FlagOwnerSpecialHealRate      = CSVReader.GetInt(values[33]);
                FlagData.FlagOwnerSpecialEnergyRate    = CSVReader.GetInt(values[34]);
                FlagData.FlagOwnerSpecialRepairRate    = CSVReader.GetInt(values[35]);
                FlagData.FlagOwnerSpecialShieldPercent = CSVReader.GetInt(values[36]);

                FlagData.FlagGraphicRow = CSVReader.GetInt(values[37]);
                FlagData.TurretrGroupId = CSVReader.GetInt(values[38]);
                FlagData.FlagRelativeId = CSVReader.GetInt(values[39]);
                FlagData.SkillLogic     = CSVReader.GetQuotedString(values[40]);

                for (int i = 0; i < 15; i++)
                {
                    FlagData.FlagDroppableTerrains[i] = CSVReader.GetInt(values[41 + i]);
                }

                FlagData.NonFlagOwnerSpecialRadius        = CSVReader.GetInt(values[57]);
                FlagData.NonFlagOwnerSpecialHealRate      = CSVReader.GetInt(values[58]);
                FlagData.NonFlagOwnerSpecialEnergyRate    = CSVReader.GetInt(values[59]);
                FlagData.NonFlagOwnerSpecialRepairRate    = CSVReader.GetInt(values[60]);
                FlagData.NonFlagOwnerSpecialShieldPercent = CSVReader.GetInt(values[61]);

                FlagData.FlagGfxBlobName = CSVReader.GetQuotedString(values[62]);
                FlagData.FlagGfxBlobId   = CSVReader.GetQuotedString(values[63]);

                FlagData.LightPermutation = CSVReader.GetInt(values[64]);
                FlagData.PaletteOffset    = CSVReader.GetInt(values[65]);
                FlagData.Hue           = CSVReader.GetInt(values[66]);
                FlagData.Saturation    = CSVReader.GetInt(values[67]);
                FlagData.Value         = CSVReader.GetInt(values[68]);
                FlagData.AnimationTime = CSVReader.GetInt(values[69]);

                FlagData.SoundPickupBlobName     = CSVReader.GetQuotedString(values[70]);
                FlagData.SoundPickupBlobId       = CSVReader.GetQuotedString(values[71]);
                FlagData.SoundPickupSimultaneous = CSVReader.GetInt(values[72]);

                FlagData.SoundDropBlobName     = CSVReader.GetQuotedString(values[74]);
                FlagData.SoundDropBlobId       = CSVReader.GetQuotedString(values[75]);
                FlagData.SoundDropSimultaneous = CSVReader.GetInt(values[76]);

                //Load the blobs
                BlobsToLoad.Add(FlagData.FlagGfxBlobName);
                BlobsToLoad.Add(FlagData.SoundDropBlobName);
                BlobsToLoad.Add(FlagData.SoundPickupBlobName);
            }
Beispiel #25
0
            public static MultiUse Load(List <string> values)
            {
                MultiUse multiUse = new MultiUse();

                multiUse.prefireGraphic = new Graphics(ref values, 71);
                multiUse.prefireSound   = new Sound(ref values, 79);
                multiUse.firingSound    = new Sound(ref values, 93);
                multiUse.iconGraphic    = new Graphics(ref values, 23);
                ItemInfo.LoadGeneralSettings1((ItemInfo)multiUse, values);

                multiUse.useAmmoID                      = CSVReader.GetInt(values[31]);
                multiUse.ammoUsedPerShot                = CSVReader.GetInt(values[32]);
                multiUse.ammoCapacity                   = CSVReader.GetInt(values[33]);
                multiUse.requiredItem                   = CSVReader.GetInt(values[34]);
                multiUse.requiredAmmoAmount             = CSVReader.GetInt(values[35]);
                multiUse.energyCostTerrain0             = CSVReader.GetInt(values[36]);
                multiUse.energyCostTerrain1             = CSVReader.GetInt(values[37]);
                multiUse.energyCostTerrain2             = CSVReader.GetInt(values[38]);
                multiUse.energyCostTerrain3             = CSVReader.GetInt(values[39]);
                multiUse.energyCostTerrain4             = CSVReader.GetInt(values[40]);
                multiUse.energyCostTerrain5             = CSVReader.GetInt(values[41]);
                multiUse.energyCostTerrainTerrain6      = CSVReader.GetInt(values[42]);
                multiUse.energyCostTerrain7             = CSVReader.GetInt(values[43]);
                multiUse.energyCostTerrain8             = CSVReader.GetInt(values[44]);
                multiUse.energyCostTerrain9             = CSVReader.GetInt(values[45]);
                multiUse.energyCostTerrain10            = CSVReader.GetInt(values[46]);
                multiUse.energyCostTerrain11            = CSVReader.GetInt(values[47]);
                multiUse.energyCostTerrain12            = CSVReader.GetInt(values[48]);
                multiUse.energyCostTerrain13            = CSVReader.GetInt(values[49]);
                multiUse.energyCostTerrain14            = CSVReader.GetInt(values[50]);
                multiUse.energyCostTerrain15            = CSVReader.GetInt(values[51]);
                multiUse.secondShotEnergy               = CSVReader.GetInt(values[52]);
                multiUse.secondShotTimeout              = CSVReader.GetInt(values[53]);
                multiUse.fireDelay                      = CSVReader.GetInt(values[54]);
                multiUse.fireDelayOther                 = CSVReader.GetInt(values[55]);
                multiUse.maxFireDelay                   = CSVReader.GetInt(values[56]);
                multiUse.entryFireDelay                 = CSVReader.GetInt(values[57]);
                multiUse.reloadDelayNormal              = CSVReader.GetInt(values[58]);
                multiUse.reloadDelayPartial             = CSVReader.GetInt(values[59]);
                multiUse.reloadDelayAsynchronous        = CSVReader.GetInt(values[60]);
                multiUse.reloadDelayAsynchronousPartial = CSVReader.GetInt(values[61]);
                multiUse.routeRange                     = CSVReader.GetInt(values[62]);
                multiUse.routeRotationalRange           = CSVReader.GetInt(values[63]);
                multiUse.routeFriendly                  = CSVReader.GetBool(values[65]);
                multiUse.recoil                 = CSVReader.GetInt(values[66]);
                multiUse.verticalRecoil         = CSVReader.GetInt(values[67]);
                multiUse.prefireDelay           = CSVReader.GetInt(values[68]);
                multiUse.reliability            = CSVReader.GetInt(values[69]);
                multiUse.reliabilityFireDelay   = CSVReader.GetInt(values[70]);
                multiUse.movementCancelsPrefire = CSVReader.GetBool(values[83]);
                multiUse.notifyOthersOfPrefire  = CSVReader.GetBool(values[84]);
                multiUse.cashCost               = CSVReader.GetInt(values[85]);
                multiUse.useWhileCarryingBall   = CSVReader.GetBool(values[86]);
                multiUse.useWhileCarryingFlag   = CSVReader.GetBool(values[87]);
                multiUse.soccerThrow            = CSVReader.GetInt(values[88]);
                multiUse.soccerBallFriction     = CSVReader.GetInt(values[89]);
                multiUse.soccerBallSpeed        = CSVReader.GetInt(values[90]);
                multiUse.soccerLowFireAngle     = CSVReader.GetInt(values[91]);
                multiUse.soccerHighFireAngle    = CSVReader.GetInt(values[92]);

                int currentPlace = 97;

                multiUse.childItems = new List <ChildItem>();

                for (int i = 0; i < 32; i++)
                {
                    if (currentPlace < values.Count)
                    {
                        ChildItem child = new ChildItem();
                        child.id               = CSVReader.GetInt(values[currentPlace + 0]);
                        child.deltaX           = CSVReader.GetInt(values[currentPlace + 1]);
                        child.deltaY           = CSVReader.GetInt(values[currentPlace + 2]);
                        child.deltaZ           = CSVReader.GetInt(values[currentPlace + 3]);
                        child.deltaAngle       = CSVReader.GetInt(values[currentPlace + 4]);
                        child.theMultiLinkMode = (ChildItem.MultiLinkModes)CSVReader.GetInt(values[currentPlace + 5]);
                        multiUse.childItems.Add(child);
                        currentPlace += 6;
                    }
                    else
                    {
                        break;
                    }
                }
                return(multiUse);
            }