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);
            }
Exemple #2
0
        public static List <ItemInfo> Load(string filename)
        {
            List <ItemInfo> itemInfo = new List <ItemInfo>();
            TextReader      reader   = new StreamReader(filename);
            string          line     = "";

            while ((line = reader.ReadLine()) != null)
            {
                List <string> values = CSVReader.Parse(line);
                switch (values[0])
                {
                case "4":
                    Ammo ammo = Ammo.Load(values);
                    BlobsToLoad.Add(ammo.graphic.blobName);
                    itemInfo.Add(ammo);
                    break;

                case "1":
                    MultiItem multiItem = MultiItem.Load(values);
                    BlobsToLoad.Add(multiItem.graphic.blobName);
                    itemInfo.Add(multiItem);
                    break;

                case "6":
                    Projectile projectile = Projectile.Load(values);
                    BlobsToLoad.Add(projectile.iconGraphic.blobName);
                    BlobsToLoad.Add(projectile.fireGraphic.blobName);
                    BlobsToLoad.Add(projectile.projectileGraphic.blobName);
                    BlobsToLoad.Add(projectile.shadowGraphic.blobName);
                    BlobsToLoad.Add(projectile.trailGraphic.blobName);
                    BlobsToLoad.Add(projectile.explosionGraphic.blobName);
                    BlobsToLoad.Add(projectile.prefireGraphic.blobName);
                    BlobsToLoad.Add(projectile.firingSound.blobName);
                    BlobsToLoad.Add(projectile.explosionSound.blobName);
                    BlobsToLoad.Add(projectile.bounceSound.blobName);
                    BlobsToLoad.Add(projectile.prefireSound.blobName);
                    itemInfo.Add(projectile);
                    break;

                case "7":
                    VehicleMaker vehicleMaker = VehicleMaker.Load(values);
                    BlobsToLoad.Add(vehicleMaker.prefireSound.blobName);
                    BlobsToLoad.Add(vehicleMaker.prefireGraphic.blobName);
                    BlobsToLoad.Add(vehicleMaker.iconGraphic.blobName);
                    itemInfo.Add(vehicleMaker);
                    break;

                case "8":
                    MultiUse multiUse = MultiUse.Load(values);
                    BlobsToLoad.Add(multiUse.prefireGraphic.blobName);
                    BlobsToLoad.Add(multiUse.firingSound.blobName);
                    BlobsToLoad.Add(multiUse.prefireSound.blobName);
                    BlobsToLoad.Add(multiUse.iconGraphic.blobName);
                    itemInfo.Add(multiUse);
                    break;

                case "11":
                    RepairItem repair = RepairItem.Load(values);
                    BlobsToLoad.Add(repair.iconGraphic.blobName);
                    BlobsToLoad.Add(repair.prefireGraphic.blobName);
                    BlobsToLoad.Add(repair.repairGraphic.blobName);
                    BlobsToLoad.Add(repair.prefireSound.blobName);
                    BlobsToLoad.Add(repair.repairSound.blobName);
                    itemInfo.Add(repair);
                    break;

                case "15":
                    UpgradeItem upgrade = UpgradeItem.Load(values);
                    BlobsToLoad.Add(upgrade.iconGraphic.blobName);
                    itemInfo.Add(upgrade);
                    break;

                case "12":
                    ControlItem control = ControlItem.Load(values);
                    BlobsToLoad.Add(control.iconGraphic.blobName);
                    BlobsToLoad.Add(control.prefireGraphic.blobName);
                    BlobsToLoad.Add(control.effectGraphic.blobName);
                    BlobsToLoad.Add(control.prefireSound.blobName);
                    BlobsToLoad.Add(control.firingSound.blobName);
                    itemInfo.Add(control);
                    break;

                case "13":
                    UtilityItem utility = UtilityItem.Load(values);
                    BlobsToLoad.Add(utility.iconGraphic.blobName);
                    BlobsToLoad.Add(utility.activateSound.blobName);
                    itemInfo.Add(utility);
                    break;

                case "17":
                    WarpItem warp = WarpItem.Load(values);
                    BlobsToLoad.Add(warp.iconGraphic.blobName);
                    BlobsToLoad.Add(warp.prefireGraphic.blobName);
                    BlobsToLoad.Add(warp.warpGraphic.blobName);
                    BlobsToLoad.Add(warp.prefireSound.blobName);
                    BlobsToLoad.Add(warp.warpSound.blobName);
                    itemInfo.Add(warp);
                    break;

                case "16":
                    SkillItem skill = SkillItem.Load(values);
                    BlobsToLoad.Add(skill.iconGraphic.blobName);
                    itemInfo.Add(skill);
                    break;

                case "14":
                    ItemMaker item = ItemMaker.Load(values);
                    BlobsToLoad.Add(item.prefireGraphic.blobName);
                    BlobsToLoad.Add(item.prefireSound.blobName);
                    BlobsToLoad.Add(item.iconGraphic.blobName);
                    itemInfo.Add(item);
                    break;

                case "18":
                    NestedItem nested = NestedItem.Load(values);
                    FilesToLoad.Add(nested.location);
                    itemInfo.Add(nested);
                    break;

                case "default":
                    //F**k you, you idiot. use Log.write
                    //Console.WriteLine("If you see this Toriad f****d up");
                    break;
                }
            }

            return(itemInfo);
        }
        }                                                                 // open sack of flour


        public SackFlourOpen() : base(UtilityItem.RandomChoice(0x1046, 0x103a))
        {
            Weight = 1.0;
        }
Exemple #4
0
 public UseItemAction(UtilityItem item) : base("Use")
 {
     this.item = item;
 }