public override System.Collections.Generic.Queue <Moonfish.Tags.BlamPointer> ReadFields(System.IO.BinaryReader binaryReader) { System.Collections.Generic.Queue <Moonfish.Tags.BlamPointer> pointerQueue = new System.Collections.Generic.Queue <Moonfish.Tags.BlamPointer>(base.ReadFields(binaryReader)); this.DecoratorSet = binaryReader.ReadByteBlockIndex1(); this.DecoratorType = ((DecoratorTypeEnum)(binaryReader.ReadByte())); this.ShaderIndex = binaryReader.ReadByte(); this.CompressedRadius = binaryReader.ReadByte(); this.Cluster = binaryReader.ReadInt16(); this.CacheBlock = binaryReader.ReadShortBlockIndex1(); this.DecoratorStartIndex = binaryReader.ReadInt16(); this.DecoratorCount = binaryReader.ReadInt16(); this.VertexStartOffset = binaryReader.ReadInt16(); this.VertexCount = binaryReader.ReadInt16(); this.IndexStartOffset = binaryReader.ReadInt16(); this.IndexCount = binaryReader.ReadInt16(); this.CompressedBoundingCenter = binaryReader.ReadInt32(); return(pointerQueue); }
public static ISector CreateDecorator(ISector sector, DecoratorTypeEnum type, int value = 0) { FactoryDecorator sectorFactory = null; switch (type) { case DecoratorTypeEnum.BigTrees: sectorFactory = new BigTreesFactory(sector); break; case DecoratorTypeEnum.DryGrass: sectorFactory = new DryGrassFactory(sector); break; case DecoratorTypeEnum.HotDay: sectorFactory = new HotDayFactory(sector, value); break; case DecoratorTypeEnum.RainingDay: sectorFactory = new RainingDayFactory(sector, value); break; case DecoratorTypeEnum.ScaredPeople: var scaredPeople = GenerateRandomValue.GetRandom(0, 6); sectorFactory = new ScaredPeopleFactory(sector, scaredPeople); break; case DecoratorTypeEnum.WindyDay: sectorFactory = new WindyDayFactory(sector, value); break; case DecoratorTypeEnum.Basic: sectorFactory = new BasicFactory(sector); break; } return(sectorFactory.CreateSector()); }