Esempio n. 1
0
        public particle_group() : base(27)
        {
            Add(Flags   = new TI.Flags());
            Add(Bitmap  = new TI.TagReference(this, TagGroups.bitm));
            Add(Physics = new TI.TagReference(this, TagGroups.pphy));
            Add(Effects = new TI.TagReference(this, TagGroups.foot));
            Add(new TI.Pad(4));
            Add(Lifespan        = new TI.RealBounds());
            Add(FadeInTime      = new TI.Real());
            Add(FadeOutTime     = new TI.Real());
            Add(CollisionEffect = new TI.TagReference(this));         // snd!,effe
            Add(DeathEffect     = new TI.TagReference(this));         // snd!,effe
            Add(MinSize         = new TI.Real());
            Add(new TI.Pad(8));
            Add(RadiusAnim = new TI.RealBounds());
            Add(new TI.Pad(4));
            Add(AnimRate             = new TI.RealBounds());
            Add(ContactDeterioration = new TI.Real());
            Add(FadeStartSize        = new TI.Real());
            Add(FadeEndSize          = new TI.Real());
            Add(new TI.Pad(4));
            Add(FirstSeqIndex   = new TI.ShortInteger());
            Add(InitialSeqCount = new TI.ShortInteger());
            Add(LoopSeqCount    = new TI.ShortInteger());
            Add(FinalSeqCount   = new TI.ShortInteger());
            Add(new TI.Pad(12));
            Add(Orientation = new TI.Enum());
            Add(new TI.Pad(2));

            Add(ShaderMap = new TI.Struct <shader_map_struct>(this));
        }
Esempio n. 2
0
 public effect_particles_block() : base(27)
 {
     Add(CreatIn1 = new TI.Enum());
     Add(CreatIn2 = new TI.Enum());
     Add(Create   = new TI.Enum());
     Add(new TI.Pad(2));
     Add(Location = new TI.BlockIndex());
     Add(new TI.Pad(2));
     Add(RelativeDirection = new TI.RealEulerAngles2D());
     Add(RelativeOffset    = new TI.RealVector3D());
     Add(new TI.Pad(12 + 40));
     Add(ParticleType         = new TI.TagReference(this, TagGroups.part));
     Add(Flags                = new TI.Flags());
     Add(DistributionFunction = new TI.Enum());
     Add(new TI.Pad(2));
     Add(CreateCount        = new TI.ShortIntegerBounds());
     Add(DistributionRadius = new TI.RealBounds());
     Add(new TI.Pad(12));
     Add(VelocityBounds        = new TI.RealBounds());
     Add(VelocityConeAngle     = new TI.Real(TI.FieldType.Angle));
     Add(AngularVelocityBounds = new TI.RealBounds(TI.FieldType.AngleBounds));
     Add(new TI.Pad(8));
     Add(Radius = new TI.RealBounds());
     Add(new TI.Pad(8));
     Add(TintLowerBound = new TI.RealColor(TI.FieldType.RealArgbColor));
     Add(TintUpperBound = new TI.RealColor(TI.FieldType.RealArgbColor));
     Add(new TI.Pad(16));
     Add(ScaleModiferA  = new TI.Flags());
     Add(ScaleModifierB = new TI.Flags());
 }
Esempio n. 3
0
		public contrail_group() : base(19)
		{
			Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
			Add(ScaleFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));

			Add(PointGenerationRate = new TI.Real());
			Add(PointVelocity = new TI.RealBounds());
			Add(PointVelocityConeAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(InheritedVelocityFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(RenderType = new TI.Enum());
			Add(new TI.Pad(2));
			Add(TextureRepeatsU = new TI.Real());
			Add(TextureRepeatsV = new TI.Real());
			Add(TextureAnimationU = new TI.Real());
			Add(TextureAnimationV = new TI.Real());
			Add(AnimationRate = new TI.Real());
			Add(Bitmap = new TI.TagReference(this, TagGroups.bitm));
			Add(FirstSequenceIndex = new TI.ShortInteger());
			Add(SequenceCount = new TI.ShortInteger());
			Add(new TI.Pad(64));

			// Map is 'Secondary Map'
			Add(ShaderMap = new TI.Struct<shader_map_struct>(this));
			Add(PointStates = new TI.Block<contrail_point_states_block>(this, 16));
		}
Esempio n. 4
0
 public structure_bsp_subcluster_block() : base(4)
 {
     Add(WorldBoundsX   = new TI.RealBounds());
     Add(WorldBoundsY   = new TI.RealBounds());
     Add(WorldBoundsZ   = new TI.RealBounds());
     Add(SurfaceIndices = new TI.Block <field_block <TI.LongInteger> >(this, 128));
 }
Esempio n. 5
0
		public sound_group() : base(26)
		{
			Add(Flags = new TI.Flags());
			Add(Class = new TI.Enum());
			Add(SampleRate = new TI.Enum());
			Add(Distance = new TI.RealBounds());
			Add(SkipFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(RandomPitchBounds = new TI.RealBounds());
			Add(InnerConeAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(OuterConeAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(OuterConeGain = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(GainModifier = new TI.Real());
			Add(MaxBendPerSecond = new TI.Real());
			Add(new TI.Pad(12));
			Add(SkipFractionModifier1 = new TI.Real());
			Add(GainModifier1 = new TI.Real());
			Add(PitchModifier1 = new TI.Real());
			Add(new TI.Pad(12));
			Add(SkipFractionModifier2 = new TI.Real());
			Add(GainModifier2 = new TI.Real());
			Add(PitchModifier2 = new TI.Real());
			Add(new TI.Pad(12));
			Add(Encoding = new TI.Enum());
			Add(Compression = new TI.Enum());
			Add(PromotionSound = new TI.TagReference(this, TagGroups.snd_));
			Add(PromotionCount = new TI.ShortInteger());
			Add(new TI.Pad(2 + 20));
			Add(PitchRanges = new TI.Block<sound_pitch_range_block>(this, 8));
		}
Esempio n. 6
0
		public damage_effect_struct() : base(4)
		{
			Add(Radius = new TI.RealBounds());
			Add(CutoffScale = new TI.Real(TI.FieldType.RealFraction));
			Add(Flags = new TI.Flags()); // not exposed for continuous_damage_effect
			Add(new TI.Pad(20));
		}
Esempio n. 7
0
 public sound_group() : base(26)
 {
     Add(Flags             = new TI.Flags());
     Add(Class             = new TI.Enum());
     Add(SampleRate        = new TI.Enum());
     Add(Distance          = new TI.RealBounds());
     Add(SkipFraction      = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(RandomPitchBounds = new TI.RealBounds());
     Add(InnerConeAngle    = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(OuterConeAngle    = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(OuterConeGain     = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(GainModifier      = new TI.Real());
     Add(MaxBendPerSecond  = new TI.Real());
     Add(new TI.Pad(12));
     Add(SkipFractionModifier1 = new TI.Real());
     Add(GainModifier1         = new TI.Real());
     Add(PitchModifier1        = new TI.Real());
     Add(new TI.Pad(12));
     Add(SkipFractionModifier2 = new TI.Real());
     Add(GainModifier2         = new TI.Real());
     Add(PitchModifier2        = new TI.Real());
     Add(new TI.Pad(12));
     Add(Encoding       = new TI.Enum());
     Add(Compression    = new TI.Enum());
     Add(PromotionSound = new TI.TagReference(this, TagGroups.snd_));
     Add(PromotionCount = new TI.ShortInteger());
     Add(new TI.Pad(2 + 20));
     Add(PitchRanges = new TI.Block <sound_pitch_range_block>(this, 8));
 }
        public contrail_group() : base(19)
        {
            Add(Flags      = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
            Add(ScaleFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));

            Add(PointGenerationRate       = new TI.Real());
            Add(PointVelocity             = new TI.RealBounds());
            Add(PointVelocityConeAngle    = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
            Add(InheritedVelocityFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(RenderType = new TI.Enum());
            Add(new TI.Pad(2));
            Add(TextureRepeatsU    = new TI.Real());
            Add(TextureRepeatsV    = new TI.Real());
            Add(TextureAnimationU  = new TI.Real());
            Add(TextureAnimationV  = new TI.Real());
            Add(AnimationRate      = new TI.Real());
            Add(Bitmap             = new TI.TagReference(this, TagGroups.bitm));
            Add(FirstSequenceIndex = new TI.ShortInteger());
            Add(SequenceCount      = new TI.ShortInteger());
            Add(new TI.Pad(64));

            // Map is 'Secondary Map'
            Add(ShaderMap   = new TI.Struct <shader_map_struct>(this));
            Add(PointStates = new TI.Block <contrail_point_states_block>(this, 16));
        }
Esempio n. 9
0
        public decal_group() : base(23)
        {
            Add(Flags = new TI.Flags(TI.FieldType.WordFlags));
            Add(Type  = new TI.Enum());
            Add(Layer = new TI.Enum());
            Add(new TI.Pad(2));
            Add(NextDecalInChain = new TI.TagReference(this, TagGroups.deca));

            Add(Radius = new TI.RealBounds());
            Add(new TI.Pad(12));
            Add(Intensity        = new TI.RealBounds(TI.FieldType.RealFractionBounds));
            Add(ColorLowerBounds = new TI.RealColor());
            Add(ColorUpperBounds = new TI.RealColor());
            Add(new TI.Pad(12));

            Add(AnimLoopFrame = new TI.ShortInteger());
            Add(AnimSpeed     = new TI.ShortInteger());
            Add(new TI.Pad(28));
            Add(Lifetime  = new TI.RealBounds());
            Add(DecayTime = new TI.RealBounds());
            Add(new TI.Pad(12 + 40 + 2 + 2));

            Add(FramebufferBlendFunction = new TI.Enum());
            Add(new TI.Pad(2 + 20));
            Add(Map = new TI.TagReference(this, TagGroups.bitm));
            Add(new TI.Pad(20));
            Add(MaxSpriteExtent = new TI.Real());
            Add(new TI.Pad(4 + 8));
        }
Esempio n. 10
0
 public player_information_block() : base(27)
 {
     Add(Unit = new TI.TagReference(this, TagGroups.unit));
     Add(new TI.Pad(28));
     Add(WalkingSpeed         = new TI.Real());
     Add(DoubleSpeedMul       = new TI.Real());
     Add(RunForward           = new TI.Real());
     Add(RunBackward          = new TI.Real());
     Add(RunSideways          = new TI.Real());
     Add(RunAcceleration      = new TI.Real());
     Add(SneakForward         = new TI.Real());
     Add(SneakBackward        = new TI.Real());
     Add(SneakSideways        = new TI.Real());
     Add(SneakAcceleration    = new TI.Real());
     Add(AirborneAcceleration = new TI.Real());
     Add(new TI.Pad(16));
     Add(GrenadeOrigin = new TI.RealPoint3D());
     Add(new TI.Pad(12));
     Add(StunMovementPenalty = new TI.Real());
     Add(StunTurningPenalty  = new TI.Real());
     Add(StunJumpingPenalty  = new TI.Real());
     Add(MinStunTime         = new TI.Real());
     Add(MaxStunTime         = new TI.Real());
     Add(new TI.Pad(8));
     Add(FirstPersionIdleTime     = new TI.RealBounds());
     Add(FirstPersionSkipFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(new TI.Pad(16));
     Add(CoopRespawnEffect = new TI.TagReference(this, TagGroups.effe));
     Add(new TI.Pad(44));
 }
Esempio n. 11
0
 public damage_effect_struct() : base(4)
 {
     Add(Radius      = new TI.RealBounds());
     Add(CutoffScale = new TI.Real(TI.FieldType.RealFraction));
     Add(Flags       = new TI.Flags());       // not exposed for continuous_damage_effect
     Add(new TI.Pad(20));
 }
Esempio n. 12
0
            public projectile_material_response_block() : base(21)
            {
                Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));

                Add(Response = new TI.Enum());
                Add(Effect   = new TI.TagReference(this, TagGroups.effe));
                Add(new TI.Pad(16));

                Add(PotentialResponse = new TI.Enum());
                Add(PotentialFlags    = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
                Add(SkipFraction      = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
                Add(Between           = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
                Add(And             = new TI.RealBounds());
                Add(PotentialEffect = new TI.TagReference(this, TagGroups.effe));
                Add(new TI.Pad(16));

                Add(ScaleEffectsBy = new TI.Enum());
                Add(TI.Pad.Word);
                Add(AngularNoise     = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
                Add(VelocityNoise    = new TI.Real());
                Add(DetonationEffect = new TI.TagReference(this, TagGroups.effe));
                Add(new TI.Pad(24));

                Add(InitialFriction = new TI.Real());
                Add(MaxDist         = new TI.Real());

                Add(ParallelFriction      = new TI.Real());
                Add(PerpendicularFriction = new TI.Real());
            }
Esempio n. 13
0
        public global_hud_screen_effect_definition() : base(20)
        {
            Add(new TI.Pad(4));
            Add(MaskFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
            Add(new TI.Pad(2 + 16));
            Add(MaskFullscreen  = new TI.TagReference(this, TagGroups.bitm));
            Add(MaskSplitscreen = new TI.TagReference(this, TagGroups.bitm));
            Add(new TI.Pad(8));

            Add(ConvolutionFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
            Add(new TI.Pad(2));
            Add(FovInBounds     = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
            Add(RadiusOutBounds = new TI.RealBounds());
            Add(new TI.Pad(24));

            Add(NightVisionFlags        = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
            Add(NightVisionScriptSource = new TI.ShortInteger());
            Add(NightVisionIntensity    = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(new TI.Pad(24));

            Add(DesaturationFlags        = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
            Add(DesaturationScriptSource = new TI.ShortInteger());
            Add(DesaturationIntensity    = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(DesaturationTint         = new TI.RealColor());
            Add(new TI.Pad(24));
        }
Esempio n. 14
0
 public wind_group() : base(6)
 {
     Add(Velocity             = new TI.RealBounds());
     Add(VariationArea        = new TI.RealEulerAngles2D());
     Add(LocalVariationWeight = new TI.Real());
     Add(LocalVariationRate   = new TI.Real());
     Add(Damping = new TI.Real());
     Add(new TI.Pad(36));
 }
Esempio n. 15
0
 protected unit_group(int field_count) : base(field_count + 54)
 {
     Add(UnitFlags             = new TI.Flags());
     Add(DefaultTeam           = new TI.Enum());
     Add(ConstantSoundVolume   = new TI.Enum());
     Add(RiderDamageFraction   = new TI.Real());
     Add(IntegratedLightToggle = new TI.TagReference(this, TagGroups.effe));
     Add(AinUnit                   = new TI.Enum());
     Add(BinUnit                   = new TI.Enum());
     Add(CinUnit                   = new TI.Enum());
     Add(DinUnit                   = new TI.Enum());
     Add(CameraFieldOfView         = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(CameraStiffness           = new TI.Real());
     Add(CameraMarkerName          = new TI.String());
     Add(CameraSubmergedMarkerName = new TI.String());
     Add(PitchAutoLevel            = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(PitchRange                = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
     Add(CameraTracks              = new TI.Block <unit_camera_track_block>(this, 2));
     Add(SeatAccelerationScale     = new TI.RealVector3D());
     Add(new TI.Pad(12));
     Add(SoftPingThreshold     = new TI.Real());
     Add(SoftPingInterruptTime = new TI.Real());
     Add(HardPingThreshold     = new TI.Real());
     Add(HardPingInterruptTime = new TI.Real());
     Add(HardDeathThreshold    = new TI.Real());
     Add(FeignDeathThreshold   = new TI.Real());
     Add(FeignDeathTime        = new TI.Real());
     Add(DistOfEvadeAnim       = new TI.Real());
     Add(DistOfDiveAnim        = new TI.Real());
     Add(new TI.Pad(4));
     Add(StunnedMovementThreshold = new TI.Real());
     Add(FeignDeathChance         = new TI.Real());
     Add(FeignRepeatChance        = new TI.Real());
     Add(SpawnedActor             = new TI.TagReference(this, TagGroups.actv));
     Add(SpawnedActorCount        = new TI.ShortIntegerBounds());
     Add(SpawnedVelocity          = new TI.Real());
     Add(AimingVelocityMax        = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(AimingAccelerationMax    = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(CasualAimingModifier     = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(LookingVelocityMaximum   = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(LookingAccelerationMax   = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(new TI.Pad(8));
     Add(AiVehicleRadius      = new TI.Real());
     Add(AiDangerRadius       = new TI.Real());
     Add(MeleeDamage          = new TI.TagReference(this, TagGroups.jpt_));
     Add(MotionSensorBlipSize = new TI.Enum());
     Add(new TI.Pad(2 + 12));
     Add(NewHudInterfaces = new TI.Block <unit_hud_reference_block>(this, 2));
     Add(DialogueVariants = new TI.Block <dialogue_variant_block>(this, 16));
     Add(GrenadeVelocity  = new TI.Real());
     Add(GrenadeType      = new TI.Enum());
     Add(GrenadeCount     = new TI.ShortInteger());
     Add(new TI.Pad(4));
     Add(PoweredSeats = new TI.Block <powered_seat_block>(this, 2));
     Add(Weapons      = new TI.Block <unit_weapon_block>(this, 4));
     Add(Seats        = new TI.Block <unit_seat_block>(this, 16));
 }
Esempio n. 16
0
 public sound_pitch_range_block() : base(6)
 {
     Add(Name                   = new TI.String());
     Add(NaturalPitch           = new TI.Real());
     Add(BendBounds             = new TI.RealBounds());
     Add(ActualPermutationCount = new TI.ShortInteger());
     Add(new TI.Pad(2 + 12));
     Add(Permutations = new TI.Block <sound_permutations_block>(this, 256));
 }
Esempio n. 17
0
			public sound_pitch_range_block() : base(6)
			{
				Add(Name = new TI.String());
				Add(NaturalPitch = new TI.Real());
				Add(BendBounds = new TI.RealBounds());
				Add(ActualPermutationCount = new TI.ShortInteger());
				Add(new TI.Pad(2 + 12));
				Add(Permutations = new TI.Block<sound_permutations_block>(this, 256));
			}
 public character_vehicle_block() : base(53)
 {
     Add(Unit  = new TI.TagReference(this, TagGroups.unit));
     Add(Style = new TI.TagReference(this, TagGroups.styl));
     Add(new TI.UselessPad(32));
     Add(VehicleFlags = new TI.Flags());
     Add(new TI.UselessPad(8));
     Add(AiPathfindingRadius = new TI.Real());
     Add(AiDestinationRadius = new TI.Real());
     Add(AiDecelerationDistanceWorldUnits = new TI.Real());
     Add(new TI.UselessPad(8));
     Add(AiTurningRadius            = new TI.Real());
     Add(AiInnerTurningRadius(< tr) = new TI.Real());
     Add(AiIdealTurningRadius(> tr) = new TI.Real());
     Add(new TI.UselessPad(8));
     Add(AiBansheeSteeringMaximum = new TI.Real(TI.FieldType.Angle));
     Add(AiMaxSteeringAngle       = new TI.Real());
     Add(AiMaxSteeringDelta       = new TI.Real());
     Add(AiOverSteeringScale      = new TI.Real());
     Add(AiOverSteeringBounds     = new TI.RealBounds(TI.FieldType.AngleBounds));
     Add(AiSideslipDistance       = new TI.Real());
     Add(AiAvoidanceDistance      = new TI.Real());
     Add(AiMinUrgency             = new TI.Real());
     Add(new TI.UselessPad(4));
     Add(AiThrottleMaximum           = new TI.Real());
     Add(AiGoalMinThrottleScale      = new TI.Real());
     Add(AiTurnMinThrottleScale      = new TI.Real());
     Add(AiDirectionMinThrottleScale = new TI.Real());
     Add(AiAccelerationScale         = new TI.Real());
     Add(AiThrottleBlend             = new TI.Real());
     Add(TheoreticalMaxSpeed         = new TI.Real());
     Add(ErrorScale = new TI.Real());
     Add(new TI.UselessPad(8));
     Add(AiAllowableAimDeviationAngle = new TI.Real(TI.FieldType.Angle));
     Add(new TI.UselessPad(12));
     Add(AiChargeTightAngleDistance = new TI.Real());
     Add(AiChargeTightAngle         = new TI.Real());
     Add(AiChargeRepeatTimeout      = new TI.Real());
     Add(AiChargeLook - aheadTime   = new TI.Real());
     Add(AiChargeConsiderDistance   = new TI.Real());
     Add(AiChargeAbortDistance      = new TI.Real());
     Add(new TI.UselessPad(4));
     Add(VehicleRamTimeout = new TI.Real());
     Add(RamParalysisTime  = new TI.Real());
     Add(new TI.UselessPad(4));
     Add(AiCoverDamageThreshold        = new TI.Real());
     Add(AiCoverMinDistance            = new TI.Real());
     Add(AiCoverTime                   = new TI.Real());
     Add(AiCoverMinBoostDistance       = new TI.Real());
     Add(TurtlingRecentDamageThreshold = new TI.Real());
     Add(TurtlingMintime               = new TI.Real());
     Add(TurtlingTimeout               = new TI.Real());
     Add(new TI.UselessPad(8));
     Add(obstacleignoresize = new TI.Enum());
     Add(new TI.Pad(2));
 }
Esempio n. 19
0
 public effect_event_block() : base(7)
 {
     Add(new TI.Pad(4));
     Add(SkipFraction   = new TI.Real(TI.FieldType.RealFraction));
     Add(DelayBounds    = new TI.RealBounds());
     Add(DurationBounds = new TI.RealBounds());
     Add(new TI.Pad(20));
     Add(Parts     = new TI.Block <effect_part_block>(this, 32));
     Add(Particles = new TI.Block <effect_particles_block>(this, 32));
 }
 public contrail_point_states_block() : base(8)
 {
     Add(Duration           = new TI.RealBounds());
     Add(TransitionDuration = new TI.RealBounds());
     Add(Physics            = new TI.TagReference(this, TagGroups.phys));
     Add(new TI.Pad(32));
     Add(Width           = new TI.Real());
     Add(ColorLowerBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
     Add(ColorUpperBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
     Add(ScaleFlags      = new TI.Flags());
 }
Esempio n. 21
0
 public looping_sound_detail_block() : base(8)
 {
     Add(Sound = new TI.TagReference(this, TagGroups.snd_));
     Add(RandomPeriodBounds = new TI.RealBounds());
     Add(Gain  = new TI.Real());
     Add(Flags = new TI.Flags());
     Add(new TI.Pad(48));
     Add(YawBounds   = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
     Add(PitchBounds = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
     Add(DistBounds  = new TI.RealBounds());
 }
Esempio n. 22
0
			public contrail_point_states_block() : base(8)
			{
				Add(Duration = new TI.RealBounds());
				Add(TransitionDuration = new TI.RealBounds());
				Add(Physics = new TI.TagReference(this, TagGroups.phys));
				Add(new TI.Pad(32));
				Add(Width = new TI.Real());
				Add(ColorLowerBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
				Add(ColorUpperBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
				Add(ScaleFlags = new TI.Flags());
			}
        public glow_group() : base(42)
        {
            Add(AttachmentMarker             = new TI.String());
            Add(NumberOfParticles            = new TI.ShortInteger());
            Add(BoundaryEffect               = new TI.Enum());
            Add(NormalParticleDistribution   = new TI.Enum());
            Add(TrailingParticleDistribution = new TI.Enum());
            Add(Flags = new TI.Flags());
            Add(new TI.Pad(28 + 2 + 2 + 4));

            Add(ParticleRotAttachment = new TI.Enum());
            Add(new TI.Pad(2));
            Add(ParticleRotVelocity         = new TI.Real());
            Add(EffectRotVelocityMultiplier = new TI.RealBounds());

            Add(EffectRotAttachment = new TI.Enum());
            Add(new TI.Pad(2));
            Add(EffectRotVelocity             = new TI.Real());
            Add(ParticleRotVelocityMultiplier = new TI.RealBounds());

            Add(EffectTransAttachment = new TI.Enum());
            Add(new TI.Pad(2));
            Add(EffectTransVelocity           = new TI.Real());
            Add(EffectTransVelocityMultiplier = new TI.RealBounds());

            Add(DistToObjectAttachment = new TI.Enum());
            Add(new TI.Pad(2));
            Add(DistToObject           = new TI.RealBounds());
            Add(DistToObjectMultiplier = new TI.RealBounds());
            Add(new TI.Pad(8));

            Add(ParticleSizeAttachment = new TI.Enum());
            Add(new TI.Pad(2));
            Add(ParticleSizeBounds = new TI.RealBounds());
            Add(ParticleSizeAttachmentMultiplier = new TI.RealBounds());

            Add(ColorAttachment = new TI.Enum());
            Add(new TI.Pad(2));
            Add(ColorBound0                 = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
            Add(ColorBound1                 = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
            Add(ColorScale0                 = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
            Add(ColorScale1                 = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
            Add(ColorRateOfChange           = new TI.Real());
            Add(FadingPercentageOfGlow      = new TI.Real());
            Add(ParticleGenerationFreq      = new TI.Real());
            Add(LifetimeOfTrailingParticles = new TI.Real());
            Add(VelocityOfTrailingParticles = new TI.Real());
            Add(TrailingParticleT           = new TI.RealBounds());
            Add(new TI.Pad(52));
            Add(Texture = new TI.TagReference(this, TagGroups.bitm));
        }
Esempio n. 24
0
            public triggers_block() : base(41)
            {
                Add(Flags = new TI.Flags());

                Add(RoundsPerSecond        = new TI.RealBounds());
                Add(FiringAccelerationTime = new TI.Real());
                Add(FiringDecelerationTime = new TI.Real());
                Add(BlurredRateOfFire      = new TI.Real());
                Add(new TI.Pad(8));
                Add(Magazine             = new TI.BlockIndex());
                Add(RoundsPerShot        = new TI.ShortInteger());
                Add(MinRoundsLoaded      = new TI.ShortInteger());
                Add(RoundsBetweenTracers = new TI.ShortInteger());
                Add(new TI.Pad(6));
                Add(FiringNoise = new TI.Enum());

                Add(Error = new TI.RealBounds());
                Add(ErrorAccelerationTime = new TI.Real());
                Add(ErrorDecelerationTime = new TI.Real());
                Add(new TI.Pad(8));

                Add(ChargingTime      = new TI.Real());
                Add(ChargedTime       = new TI.Real());
                Add(OverchargedAction = new TI.Enum());
                Add(new TI.Pad(2));
                Add(ChargedIllumination = new TI.Real());
                Add(SpewTime            = new TI.Real());
                Add(ChargingEffect      = new TI.TagReference(this));

                Add(DistributionFunction = new TI.Enum());
                Add(ProjectilesPerShot   = new TI.ShortInteger());
                Add(DistributionAngle    = new TI.Real());
                Add(new TI.Pad(4));
                Add(MinError           = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
                Add(ErrorAngle         = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
                Add(FirstPersionOffset = new TI.RealPoint3D());
                Add(new TI.Pad(4));
                Add(Projectile = new TI.TagReference(this, TagGroups.proj));

                Add(EjectionPortRecoveryTime = new TI.Real());
                Add(IlluminationRecoveryTime = new TI.Real());
                Add(new TI.Pad(12));
                Add(HeatGeneratedPerRound = new TI.Real());
                Add(AgeGeneratedPerRound  = new TI.Real());
                Add(new TI.Pad(4));
                Add(OverloadTime = new TI.Real());
                Add(new TI.Pad(8 + 32 + 24));

                Add(FiringEffects = new TI.Block <trigger_firing_effect_block>(this, 8));
            }
Esempio n. 25
0
 public falling_damage_block() : base(11)
 {
     Add(new TI.Pad(8));
     Add(HarmfulFallingDist = new TI.RealBounds());
     Add(FallingDamage      = new TI.TagReference(this, TagGroups.jpt_));
     Add(new TI.Pad(8));
     Add(MaxFallingDist = new TI.Real());
     Add(DistDamage     = new TI.TagReference(this, TagGroups.jpt_));
     Add(VehicleEnvironmentCollisionDamage = new TI.TagReference(this, TagGroups.jpt_));
     Add(VehicleKilledUnitDamageEffect     = new TI.TagReference(this, TagGroups.jpt_));
     Add(VehicleCollisionDamage            = new TI.TagReference(this, TagGroups.jpt_));
     Add(FlamingDeathDamage = new TI.TagReference(this, TagGroups.jpt_));
     Add(new TI.Pad(28));
 }
Esempio n. 26
0
 public breakable_surface_particle_effect_block() : base(12)
 {
     Add(ParticleType  = new TI.TagReference(this, TagGroups.part));
     Add(Flags         = new TI.Flags());
     Add(Density       = new TI.Real());
     Add(VelocityScale = new TI.RealBounds());
     Add(new TI.Pad(4));
     Add(AngularVelocity = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
     Add(new TI.Pad(8));
     Add(Radius = new TI.RealBounds());
     Add(new TI.Pad(8));
     Add(TintLowerBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
     Add(TintUpperBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
     Add(new TI.Pad(28));
 }
Esempio n. 27
0
 public damage_data_struct() : base(14)
 {
     Add(SideEffect                = new TI.Enum());
     Add(Category                  = new TI.Enum());
     Add(Flags                     = new TI.Flags());
     Add(AOECoreRadius             = new TI.Real());     // not exposed for continuous_damage_effect
     Add(DamageLowerBound          = new TI.Real());
     Add(DamageUpperBound          = new TI.RealBounds());
     Add(VehiclePassThroughPenalty = new TI.Real());
     Add(ActiveCamoDamage          = new TI.Real());    // not exposed for continuous_damage_effect
     Add(Stun     = new TI.Real());
     Add(MaxStun  = new TI.Real());
     Add(StunTime = new TI.Real());
     Add(TI.Pad.DWord);
     Add(InstantaneousAcceleration = new TI.Real());
     Add(new TI.Pad(4 + 4));             // useless padding
 }
Esempio n. 28
0
		public damage_data_struct() : base(14)
		{
			Add(SideEffect = new TI.Enum());
			Add(Category = new TI.Enum());
			Add(Flags = new TI.Flags());
			Add(AOECoreRadius = new TI.Real());	// not exposed for continuous_damage_effect
			Add(DamageLowerBound = new TI.Real());
			Add(DamageUpperBound = new TI.RealBounds());
			Add(VehiclePassThroughPenalty = new TI.Real());
			Add(ActiveCamoDamage = new TI.Real()); // not exposed for continuous_damage_effect
			Add(Stun = new TI.Real());
			Add(MaxStun = new TI.Real());
			Add(StunTime = new TI.Real());
			Add(TI.Pad.DWord);
			Add(InstantaneousAcceleration = new TI.Real());
			Add(new TI.Pad(4 + 4)); // useless padding
		}
Esempio n. 29
0
 public effect_part_block() : base(14)
 {
     Add(CreatIn1 = new TI.Enum());
     Add(CreatIn2 = new TI.Enum());
     Add(Location = new TI.BlockIndex());
     Add(Flags    = new TI.Flags(TI.FieldType.WordFlags));
     Add(new TI.Pad(16));
     Add(Type = new TI.TagReference(this));
     Add(new TI.Pad(24));
     Add(VelocityBounds        = new TI.RealBounds());
     Add(VelocityConeAngle     = new TI.Real(TI.FieldType.Angle));
     Add(AngularVelocityBounds = new TI.RealBounds(TI.FieldType.AngleBounds));
     Add(RadiusModifierBounds  = new TI.RealBounds());
     Add(new TI.Pad(4));
     Add(ScaleModiferA  = new TI.Flags());
     Add(ScaleModifierB = new TI.Flags());
 }
Esempio n. 30
0
 public vehicle_group() : base(42)
 {
     Add(Flags = new TI.Flags());
     Add(Type  = new TI.Enum());
     Add(new TI.Pad(2));
     Add(MaxForwardSpeed    = new TI.Real());
     Add(MaxReverseSpeed    = new TI.Real());
     Add(SpeedAcceleration  = new TI.Real());
     Add(SpeedDeceleration  = new TI.Real());
     Add(MaxLeftTurn        = new TI.Real());
     Add(MaxRightTurn       = new TI.Real());
     Add(WheelCircumference = new TI.Real());
     Add(TurnRate           = new TI.Real());
     Add(BlurSpeed          = new TI.Real());
     Add(AinVehicle         = new TI.Enum());
     Add(BinVehicle         = new TI.Enum());
     Add(CinVehicle         = new TI.Enum());
     Add(DinVehicle         = new TI.Enum());
     Add(new TI.Pad(12));
     Add(MaxLeftSlide               = new TI.Real());
     Add(MaxRightSlide              = new TI.Real());
     Add(SlideAcceleration          = new TI.Real());
     Add(SlideDecleration           = new TI.Real());
     Add(MinFlippingAngularVelocity = new TI.Real());
     Add(MaxFlippingAngularVelocity = new TI.Real());
     Add(new TI.Pad(24));
     Add(FixedGunYaw   = new TI.Real());
     Add(FixedGunPitch = new TI.Real());
     Add(new TI.Pad(24));
     Add(AiSideslipDist        = new TI.Real());
     Add(AiDestRadius          = new TI.Real());
     Add(AiAvoidanceDist       = new TI.Real());
     Add(AiPathfindingRadius   = new TI.Real());
     Add(AiChargeRepeatTimeout = new TI.Real());
     Add(AiStrafingAbortRange  = new TI.Real());
     Add(AiOverseeringBounds   = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
     Add(AiSteeringMax         = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
     Add(AiThrottleMax         = new TI.Real());
     Add(AiMovePositionTime    = new TI.Real());
     Add(new TI.Pad(4));
     Add(SuspensionSound = new TI.TagReference(this, TagGroups.snd_));
     Add(CrashSound      = new TI.TagReference(this, TagGroups.snd_));
     Add(MaterialEffects = new TI.TagReference(this, TagGroups.foot));
     Add(Effect          = new TI.TagReference(this, TagGroups.effe));
 }
        public light_group() : base(35)
        {
            Add(Flags = new TI.Flags());

            Add(ShapeRadius         = new TI.Real());
            Add(ShapeRadiusModifier = new TI.RealBounds());
            Add(FalloffAngle        = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
            Add(CuttoffAngle        = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
            Add(LensFlareOnlyRadius = new TI.Real());
            Add(new TI.Pad(24));

            Add(InterpolationFlags = new TI.Flags());
            Add(ColorLowerBound    = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
            Add(ColorUpperBound    = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
            Add(new TI.Pad(12));

            Add(PrimaryCubeMap = new TI.TagReference(this, TagGroups.bitm));
            Add(new TI.Pad(2));
            Add(TextureAnimationFunction = new TI.Enum());
            Add(TextureAnimationPeriod   = new TI.Real());
            Add(SecondaryCubeMap         = new TI.TagReference(this, TagGroups.bitm));
            Add(new TI.Pad(2));
            Add(YawFunction = new TI.Enum());
            Add(YawPeriod   = new TI.Real());
            Add(new TI.Pad(2));
            Add(RollFunction = new TI.Enum());
            Add(RollPeriod   = new TI.Real());
            Add(new TI.Pad(2));
            Add(PitchFunction = new TI.Enum());
            Add(PitchPeriod   = new TI.Real());
            Add(new TI.Pad(8));

            Add(LensFlare = new TI.TagReference(this, TagGroups.lens));
            Add(new TI.Pad(24));

            Add(RadiosityIntensity = new TI.Real());
            Add(RadiosityColor     = new TI.RealColor());
            Add(new TI.Pad(16));

            Add(Duration = new TI.Real());
            Add(new TI.Pad(2));

            Add(FalloffFunction = new TI.Enum());
            Add(new TI.Pad(8 + 92));
        }
Esempio n. 32
0
 public model_collision_group() : base(42)
 {
     Add(Flags = new TI.Flags());
     Add(IndirectDamageMaterial = new TI.BlockIndex());
     Add(new TI.Pad(2));
     Add(MaximumBodyVitality = new TI.Real());
     Add(BodySystemShock     = new TI.Real());
     Add(new TI.Pad(24 + 28));
     Add(FriendlyDamageResistance = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(new TI.Pad(8 + 32));
     Add(LocalizedDamageEffect     = new TI.TagReference(this, TagGroups.effe));
     Add(AreaDamageEffectThreshold = new TI.Real());
     Add(AreaDamageEffect          = new TI.TagReference(this, TagGroups.effe));
     Add(BodyDamagedThreshold      = new TI.Real());
     Add(BodyDamagedEffect         = new TI.TagReference(this, TagGroups.effe));
     Add(BodyDepletedEffect        = new TI.TagReference(this, TagGroups.effe));
     Add(BodyDestroyedThreshold    = new TI.Real());
     Add(BodyDestroyedEffect       = new TI.TagReference(this, TagGroups.effe));
     Add(MaximumShieldVitality     = new TI.Real());
     Add(new TI.Pad(2));
     Add(ShieldMaterialType = new TI.Enum());
     Add(new TI.Pad(24));
     Add(ShieldFailureFunction = new TI.Enum());
     Add(new TI.Pad(2));
     Add(ShieldFailureThreshold    = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(FailingShieldLeakFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
     Add(new TI.Pad(16));
     Add(MinimumStunDamage = new TI.Real());
     Add(StunTime          = new TI.Real());
     Add(RechargeTime      = new TI.Real());
     Add(new TI.Pad(16 + 96));
     Add(ShieldDamagedThreshold = new TI.Real());
     Add(ShieldDamagedEffect    = new TI.TagReference(this, TagGroups.effe));
     Add(ShieldDepletedEffect   = new TI.TagReference(this, TagGroups.effe));
     Add(ShieldRechargingEffect = new TI.TagReference(this, TagGroups.effe));
     Add(new TI.Pad(12 + 112));
     Add(Materials = new TI.Block <damage_materials_block>(this, 32));
     Add(Regions   = new TI.Block <damage_regions_block>(this, 8));
     Add(new TI.Pad(12 + 16));             // Modifiers isn't used
     Add(X = new TI.RealBounds());
     Add(Y = new TI.RealBounds());
     Add(Z = new TI.RealBounds());
     Add(PathfindingSpheres = new TI.Block <pathfinding_spheres_block>(this, 32));
     Add(Nodes = new TI.Block <collision_nodes_block>(this, 64));
 }
Esempio n. 33
0
 public structure_bsp_cluster_block() : base()
 {
     Add(BoundsX                     = new TI.RealBounds());
     Add(BoundsY                     = new TI.RealBounds());
     Add(BoundsZ                     = new TI.RealBounds());
     Add(ScenarioSkyIndex            = new TI.ByteInteger());
     Add(MediaIndex                  = new TI.ByteInteger());
     Add(ScenarioVisibleSkyIndex     = new TI.ByteInteger());
     Add(ScenarioAtmosphericFogIndex = new TI.ByteInteger());
     Add(new TI.ShortInteger());
     Add(new TI.ShortInteger());
     Add(BackgroundSound  = new TI.BlockIndex()); // 1 structure_bsp_background_sound_palette_block
     Add(SoundEnvironment = new TI.BlockIndex()); // 1 structure_bsp_sound_environment_palette_block
     Add(Weather          = new TI.BlockIndex()); // 1 structure_bsp_weather_palette_block
     Add(new TI.ShortInteger());                  // TransitionStructureBsp?
     Add(new TI.ShortInteger());                  // block index?
     Add(new TI.BlockIndex());                    // doesnt seem to be to anything in the actual bsp data
     Add(new TI.ShortInteger());                  // flags?
     Add(new TI.Flags(TI.FieldType.WordFlags));
     Add(TI.UnknownPad.BlockHalo3);               // ??
     Add(TI.UnknownPad.BlockHalo3);               // [0x2]
     Add(new TI.UnknownPad(4 + 20));              // '20' starts a hkShapeContainer object
     Add(new TI.TagReference(this, TagGroups.sbsp));
     Add(new TI.UnknownPad(32));
     Add(CollisionMoppCode = new TI.Block <mopp_code_block>(this, 0));
     Add(TI.UnknownPad.DWord);
     Add(TI.UnknownPad.BlockHalo3);             // [0x4]
     // 0xAC
     Add(TI.UnknownPad.BlockHalo3);             // [0x30]
     // short (count, w/e the elements are they are sizeof(0x10))
     // short (or two bytes)
     // long offset
     // real_point3d
     // real[4]
     // real_point3d
     Add(TI.UnknownPad.BlockHalo3);             // ??
     Add(TI.UnknownPad.BlockHalo3);             // [0x4]
     // short
     // short
     Add(TI.UnknownPad.BlockHalo3);             // [0x10]
     // real_point3d
     // short
     // short
 }
Esempio n. 34
0
        public damage_effect_group() : base(31)
        {
            Add(DamageEffect = new TI.Struct <damage_effect_struct>(this));

            Add(ScreenFlashType     = new TI.Enum());
            Add(ScreenFlashPriority = new TI.Enum());
            Add(new TI.Pad(12));
            Add(ScreenFlashDuration     = new TI.Real());
            Add(ScreenFlashFadeFunction = new TI.Enum());
            Add(new TI.Pad(2 + 8));
            Add(ScreenFlashMaxIntensity = new TI.Real(TI.FieldType.RealFraction));
            Add(new TI.Pad(4));
            Add(ScreenFlashColor = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));

            Add(RumbleLowFreq         = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(RumbleLowDuration     = new TI.Real());
            Add(RumbleLowFadeFunction = new TI.Enum());
            Add(new TI.Pad(2 + 8));

            Add(RumbleHighFreq         = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(RumbleHighDuration     = new TI.Real());
            Add(RumbleHighFadeFunction = new TI.Enum());
            Add(new TI.Pad(2 + 8 + 4 + 16));

            Add(CameraImpulseDuration     = new TI.Real());
            Add(CameraImpulseFadeFunction = new TI.Enum());
            Add(new TI.Pad(2));
            Add(CameraImpulseRotation = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
            Add(CameraImpulsePushback = new TI.Real());
            Add(CameraImpulseJitter   = new TI.RealBounds());
            Add(new TI.Pad(4 + 4));

            Add(PermCameraImpulseAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));

            Add(DamageCameraEffect = new TI.Struct <damage_camera_effect_struct>(this));

            Add(Sound = new TI.TagReference(this, TagGroups.snd_));

            Add(DamageBreakingEffect = new TI.Struct <damage_breaking_effect_struct>(this));
            Add(DamageData           = new TI.Struct <damage_data_struct>(this));
            Add(DamageModifiers      = new TI.Struct <damage_modifiers_struct>(this));
        }
Esempio n. 35
0
            public global_hud_multitexture_overlay_effector_definition() : base(15)
            {
                Add(new TI.Pad(64));
                Add(DestType = new TI.Enum());
                Add(Dest     = new TI.Enum());
                Add(Source   = new TI.Enum());
                Add(new TI.Pad(2));

                Add(InBounds  = new TI.RealBounds());
                Add(OutBounds = new TI.RealBounds());
                Add(new TI.Pad(64));

                Add(TintColorLowerBound = new TI.RealColor());
                Add(TintColorUpperBound = new TI.RealColor());

                Add(PeriodicFunction = new TI.Enum());
                Add(new TI.Pad(2));
                Add(FunctionPeriod = new TI.Real());
                Add(FunctionPhase  = new TI.Real());
                Add(new TI.Pad(32));
            }
Esempio n. 36
0
        public fog_group() : base(33)
        {
            Add(Flags = new TI.Flags());
            Add(new TI.Pad(4 + 76 + 4));
            Add(MaxDensity = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(new TI.Pad(4));
            Add(OpaqueDist = new TI.Real());
            Add(new TI.Pad(4));
            Add(OpaqueDepth = new TI.Real());
            Add(new TI.Pad(8));
            Add(DistToWaterPlane = new TI.Real());

            Add(Color = new TI.RealColor());

            Add(ScreenLayerFlags      = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
            Add(LayerCount            = new TI.ShortInteger());
            Add(DistGradient          = new TI.RealBounds());
            Add(DensityGradient       = new TI.RealBounds(BlamLib.TagInterface.FieldType.RealFractionBounds));
            Add(StartDistFromFogPlane = new TI.Real());
            Add(new TI.Pad(4));
            Add(ScreenLayerColor = new TI.Color(BlamLib.TagInterface.FieldType.RgbColor));
            Add(RotationMul      = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(StrafingMul      = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(ZoomMul          = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
            Add(new TI.Pad(8));
            Add(MapScale = new TI.Real());
            Add(Map      = new TI.TagReference(this, TagGroups.bitm));

            Add(AnimPeriod = new TI.Real());
            Add(new TI.Pad(4));
            Add(WindVelocity            = new TI.RealBounds());
            Add(WindPeriod              = new TI.RealBounds());
            Add(WindAccelerationWeight  = new TI.Real());
            Add(WindPerpendicularWeight = new TI.Real());
            Add(new TI.Pad(8));
            Add(BackgroundSound  = new TI.TagReference(this, TagGroups.snd_));
            Add(SoundEnvironment = new TI.TagReference(this, TagGroups.snde));
            Add(new TI.Pad(120));
        }
Esempio n. 37
0
			public object_function_block() : base(21)
			{
				Add(Flags = new TI.Flags());
				Add(Period = new TI.Real());
				Add(ScalePeriodBy = new TI.Enum());
				Add(Function = new TI.Enum());
				Add(ScaleFunctionBy = new TI.Enum());
				Add(WobbleFunction = new TI.Enum());
				Add(WobblePeriod = new TI.Real());
				Add(WobbleMagnitude = new TI.Real());
				Add(SquareWaveThreshold = new TI.Real(TI.FieldType.RealFraction));
				Add(StepCount = new TI.ShortInteger());
				Add(MapTo = new TI.Enum());
				Add(SawtoothCount = new TI.ShortInteger());
				Add(_Add = new TI.Enum());
				Add(ScaleResultBy = new TI.Enum());
				Add(BoundsMode = new TI.Enum());
				Add(Bounds = new TI.RealBounds(BlamLib.TagInterface.FieldType.RealFractionBounds));
				Add(new TI.Pad(4 + 2));
				Add(TurnoffWith = new TI.BlockIndex());
				Add(ScaleBy = new TI.Real());
				Add(new TI.Pad(252 + 16));
				Add(Usage = new TI.String());
			}
Esempio n. 38
0
			public encounter_block() : base(12)
			{
				Add(Name = new TI.String());
				Add(Flags = new TI.Flags());
				Add(TeamIndex = new TI.Enum());
				Add(new TI.Skip(2));
				Add(SearchBehavoir = new TI.Enum());
				Add(ManualBspIndex = new TI.ShortInteger());
				Add(RespawnDelay = new TI.RealBounds());
				Add(new TI.Pad(76));
				Add(Squads = new TI.Block<squads_block>(this, 64));
				Add(Platoons = new TI.Block<platoons_block>(this, 32));
				Add(FiringPositions = new TI.Block<firing_positions_block>(this, 512));
				Add(PlayerStartingLocations = new TI.Block<scenario_players_block>(this, 256));
			}
Esempio n. 39
0
				public squads_block() : base(31)
				{
					Add(Name = new TI.String());
					Add(ActorType = new TI.BlockIndex());
					Add(Platoon = new TI.BlockIndex());
					Add(InitialState = new TI.Enum());
					Add(ReturnState = new TI.Enum());
					Add(Flags = new TI.Flags());
					Add(UniqueLeaderType = new TI.Enum());
					Add(new TI.Pad(2 + 28 + 2));
					Add(ManeuverToSquad = new TI.BlockIndex());
					Add(SquadDelayTimer = new TI.Real());
					Add(Attacking = new TI.Flags());
					Add(AttackingSearch = new TI.Flags());
					Add(AttackingGuard = new TI.Flags());
					Add(Defending = new TI.Flags());
					Add(DefendingSearch = new TI.Flags());
					Add(DefendingGuard = new TI.Flags());
					Add(Pursuing = new TI.Flags());
					Add(new TI.Pad(4 + 8));
					Add(NormalDiffCount = new TI.ShortInteger());
					Add(InsaneDiffCount = new TI.ShortInteger());
					Add(MajorUpgrade = new TI.Enum());
					Add(new TI.Pad(2));
					Add(RespawnMinActors = new TI.ShortInteger());
					Add(RespawnMaxActors = new TI.ShortInteger());
					Add(RespawnTotal = new TI.ShortInteger());
					Add(new TI.Pad(2));
					Add(RespawnDelay = new TI.RealBounds());
					Add(new TI.Pad(48));
					Add(MovePositions = new TI.Block<move_positions_block>(this, 32));
					Add(StartingLocations = new TI.Block<actor_starting_locations_block>(this, 32));
					Add(new TI.Pad(12));
				}
Esempio n. 40
0
					public move_positions_block() : base(8)
					{
						Add(Position = new TI.RealPoint3D());
						Add(Facing = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
						Add(Weight = new TI.Real());
						Add(Time = new TI.RealBounds());
						Add(Animation = new TI.BlockIndex());
						Add(SequenceID = new TI.ByteInteger());
						Add(new TI.Pad(1 + 44));
						Add(SurfaceIndex = new TI.LongInteger());
					}
Esempio n. 41
0
		public vehicle_group() : base(42)
		{
			Add(Flags = new TI.Flags());
			Add(Type = new TI.Enum());
			Add(new TI.Pad(2));
			Add(MaxForwardSpeed = new TI.Real());
			Add(MaxReverseSpeed = new TI.Real());
			Add(SpeedAcceleration = new TI.Real());
			Add(SpeedDeceleration = new TI.Real());
			Add(MaxLeftTurn = new TI.Real());
			Add(MaxRightTurn = new TI.Real());
			Add(WheelCircumference = new TI.Real());
			Add(TurnRate = new TI.Real());
			Add(BlurSpeed = new TI.Real());
			Add(AinVehicle = new TI.Enum());
			Add(BinVehicle = new TI.Enum());
			Add(CinVehicle = new TI.Enum());
			Add(DinVehicle = new TI.Enum());
			Add(new TI.Pad(12));
			Add(MaxLeftSlide = new TI.Real());
			Add(MaxRightSlide = new TI.Real());
			Add(SlideAcceleration = new TI.Real());
			Add(SlideDecleration = new TI.Real());
			Add(MinFlippingAngularVelocity = new TI.Real());
			Add(MaxFlippingAngularVelocity = new TI.Real());
			Add(new TI.Pad(24));
			Add(FixedGunYaw = new TI.Real());
			Add(FixedGunPitch = new TI.Real());
			Add(new TI.Pad(24));
			Add(AiSideslipDist = new TI.Real());
			Add(AiDestRadius = new TI.Real());
			Add(AiAvoidanceDist = new TI.Real());
			Add(AiPathfindingRadius = new TI.Real());
			Add(AiChargeRepeatTimeout = new TI.Real());
			Add(AiStrafingAbortRange = new TI.Real());
			Add(AiOverseeringBounds = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
			Add(AiSteeringMax = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(AiThrottleMax = new TI.Real());
			Add(AiMovePositionTime = new TI.Real());
			Add(new TI.Pad(4));
			Add(SuspensionSound = new TI.TagReference(this, TagGroups.snd_));
			Add(CrashSound = new TI.TagReference(this, TagGroups.snd_));
			Add(MaterialEffects = new TI.TagReference(this, TagGroups.foot));
			Add(Effect = new TI.TagReference(this, TagGroups.effe));
		}
Esempio n. 42
0
			public falling_damage_block() : base(11)
			{
				Add(new TI.Pad(8));
				Add(HarmfulFallingDist = new TI.RealBounds());
				Add(FallingDamage = new TI.TagReference(this, TagGroups.jpt_));
				Add(new TI.Pad(8));
				Add(MaxFallingDist = new TI.Real());
				Add(DistDamage = new TI.TagReference(this, TagGroups.jpt_));
				Add(VehicleEnvironmentCollisionDamage = new TI.TagReference(this, TagGroups.jpt_));
				Add(VehicleKilledUnitDamageEffect = new TI.TagReference(this, TagGroups.jpt_));
				Add(VehicleCollisionDamage = new TI.TagReference(this, TagGroups.jpt_));
				Add(FlamingDeathDamage = new TI.TagReference(this, TagGroups.jpt_));
				Add(new TI.Pad(28));
			}
Esempio n. 43
0
				public breakable_surface_particle_effect_block() : base(12)
				{
					Add(ParticleType = new TI.TagReference(this, TagGroups.part));
					Add(Flags = new TI.Flags());
					Add(Density = new TI.Real());
					Add(VelocityScale = new TI.RealBounds());
					Add(new TI.Pad(4));
					Add(AngularVelocity = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
					Add(new TI.Pad(8));
					Add(Radius = new TI.RealBounds());
					Add(new TI.Pad(8));
					Add(TintLowerBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
					Add(TintUpperBound = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
					Add(new TI.Pad(28));
				}
Esempio n. 44
0
		public global_geometry_compression_info_block() : base(7)
		{
			Add(PositionX = new TI.RealBounds());
			Add(PositionY = new TI.RealBounds());
			Add(PositionZ = new TI.RealBounds());
			Add(TexCoordX = new TI.RealBounds());
			Add(TexCoordY = new TI.RealBounds());
			Add(SecondaryTexCoordX = new TI.RealBounds());
			Add(SecondaryTexCoordY = new TI.RealBounds());
		}
Esempio n. 45
0
		public structure_bsp_group() : base(52)
		{
			Add(LightmapBitmaps = new TI.TagReference(this, TagGroups.bitm));
			Add(VehicleFloor = new TI.Real());
			Add(VehicleCeiling = new TI.Real());
			Add(new TI.Pad(20));

			Add(DefaultAmbientColor = new TI.RealColor());
			Add(new TI.Pad(4));

			Add(DefaultDistantLight0Color = new TI.RealColor());
			Add(DefaultDistantLight0ColorDirection = new TI.RealVector3D());
			Add(DefaultDistantLight1Color = new TI.RealColor());
			Add(DefaultDistantLightColor1Direction = new TI.RealVector3D());
			Add(new TI.Pad(12));

			Add(DefaultReflectionTint = new TI.RealColor(BlamLib.TagInterface.FieldType.RealArgbColor));
			Add(DefaultShadowVector = new TI.RealVector3D());
			Add(DefaultShadowColor = new TI.RealColor());
			Add(new TI.Pad(4));

			Add(CollisionMaterials = new TI.Block<structure_collision_materials_block>(this, 512));
			Add(CollisionBsp = new TI.Block<collision_bsp_block>(this, 1));
			Add(Nodes = new TI.Block<structure_bsp_node_block>(this, 131072));

			Add(WorldBoundsX = new TI.RealBounds());
			Add(WorldBoundsY = new TI.RealBounds());
			Add(WorldBoundsZ = new TI.RealBounds());

			Add(Leaves = new TI.Block<structure_bsp_leaf_block>(this, 65536));
			Add(LeafSurfaces = new TI.Block<structure_bsp_surface_reference_block>(this, 262144));
			Add(Surfaces = new TI.Block<structure_bsp_surface_block>(this, 131072));

			Add(Lightmaps = new TI.Block<structure_bsp_lightmap_block>(this, 128));
			Add(new TI.Pad(12));

			Add(LensFlares = new TI.Block<structure_bsp_lens_flare_block>(this, 256));
			Add(LensFlareMarkers = new TI.Block<structure_bsp_lens_flare_marker_block>(this, 65536));

			Add(Clusters = new TI.Block<structure_bsp_cluster_block>(this, 8192));
			Add(ClusterData = new TI.Data(this));
			Add(ClusterPortals = new TI.Block<structure_bsp_cluster_portal_block>(this, 512));
			Add(new TI.Pad(12));

			Add(BreakableSurfaces = new TI.Block<structure_bsp_breakable_surface_block>(this, 256));
			Add(FogPlanes = new TI.Block<structure_bsp_fog_plane_block>(this, 32));
			Add(FogRegions = new TI.Block<structure_bsp_fog_region_block>(this, 32));
			Add(FogPalette = new TI.Block<structure_bsp_fog_palette_block>(this, 32));
			Add(new TI.Pad(24));

			Add(WeatherPalette = new TI.Block<structure_bsp_weather_palette_block>(this, 32));
			Add(WeatherPolyhedra = new TI.Block<structure_bsp_weather_polyhedron_block>(this, 32));
			Add(new TI.Pad(24));

			Add(PathfindingSurfaces = new TI.Block<field_block<TI.ByteInteger>>(this, 131072));
			Add(PathfindingEdges = new TI.Block<field_block<TI.ByteInteger>>(this, 262144));

			Add(BackgroundSoundPalette = new TI.Block<structure_bsp_background_sound_palette_block>(this, 64));
			Add(SoundEnvironmentPalette = new TI.Block<structure_bsp_sound_environment_palette_block>(this, 64));
			Add(SoundPASData = new TI.Data(this));
			Add(new TI.Pad(24));

			Add(Markers = new TI.Block<structure_bsp_marker_block>(this, 1024));
			Add(DetailObjects = new TI.Block<structure_bsp_detail_object_data_block>(this, 1));
			Add(RuntimeDecals = new TI.Block<structure_bsp_runtime_decal_block>(this, 6144));
			Add(new TI.Pad(8 + 
			
			// leaf_map
				4)); // tag_block*, sizeof(0xC)
			Add(LeafMapLeaves = new TI.Block<global_map_leaf_block>(this, 65536));
			Add(LeafMapPortals = new TI.Block<global_leaf_portal_block>(this, 524288));
		}
Esempio n. 46
0
		public actor_variant_group() : base(90)
		{
			Add(Flags = new TI.Flags());
			Add(ActorDefinition = new TI.TagReference(this, TagGroups.actr));
			Add(Unit = new TI.TagReference(this, TagGroups.unit));
			Add(MajorVariant = new TI.TagReference(this, TagGroups.actv));
			Add(new TI.Pad(24));
			
			#region movement switching
			Add(MovementType = new TI.Enum());
			Add(new TI.Pad(2));
			Add(InitialCrouchChance = new TI.Real());
			Add(CrouchTime = new TI.RealBounds());
			Add(RunTime = new TI.RealBounds());
			#endregion

			#region ranged combat
			Add(Weapon = new TI.TagReference(this, TagGroups.weap));
			Add(MaxFiringDist = new TI.Real());
			Add(RateOfFire = new TI.Real());
			Add(ProjectileError = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(FirstBurstDelayTime = new TI.RealBounds());
			Add(NewTargetFiringPatternTime = new TI.Real());
			Add(SurpriseDelayTime = new TI.Real());
			Add(SurpriseFireWildyTime = new TI.Real());
			Add(DeathFireWildlyChance = new TI.Real());
			Add(DeathFireWildlyTime = new TI.Real());
			Add(DesiredCombatRange = new TI.RealBounds());
			Add(CustomStandGunOffset = new TI.RealVector3D());
			Add(CustomCrouchGunOffset = new TI.RealVector3D());
			Add(TargetTracking = new TI.Real());
			Add(TargetLeading = new TI.Real());
			Add(WeaponDamageModifier = new TI.Real());
			Add(DamagePerSecond = new TI.Real());
			#endregion

			#region burst geometry
			Add(BurstOriginRadius = new TI.Real());
			Add(BurstOriginAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(BurstReturnLength = new TI.RealBounds());
			Add(BurstReturnAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(BurstDuration = new TI.RealBounds());
			Add(BurstSepartion = new TI.RealBounds());
			Add(BurstAngularVelocity = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(new TI.Pad(4));
			Add(SpecialDamageModifier = new TI.Real());
			Add(SpecialProjectileError = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			#endregion

			#region firing patterns
			Add(NewTargetBurstDuration = new TI.Real());
			Add(NewTargetBurstSeperation = new TI.Real());
			Add(NewTargetRateOfFire = new TI.Real());
			Add(NewTargetProjectileError = new TI.Real());
			Add(new TI.Pad(8));
			Add(MovingBurstDuration = new TI.Real());
			Add(MovingBurstSeperation = new TI.Real());
			Add(MovingRateOfFire = new TI.Real());
			Add(MovingProjectileError = new TI.Real());
			Add(new TI.Pad(8));
			Add(BerserkBurstDuration = new TI.Real());
			Add(BerserkBurstSeperation = new TI.Real());
			Add(BerserkRateOfFire = new TI.Real());
			Add(BerserkProjectileError = new TI.Real());
			Add(new TI.Pad(8));
			#endregion

			#region special-case firing properties
			Add(SuperBallisticRange = new TI.Real());
			Add(BombardmentRange = new TI.Real());
			Add(ModifiedVisionRange = new TI.Real());
			Add(SpecialFireMode = new TI.Enum());
			Add(SpecialFireSituation = new TI.Enum());
			Add(SpecialFireChance = new TI.Real());
			Add(SpecialFireDelay = new TI.Real());
			#endregion

			#region berserking and melee
			Add(MeleeRange = new TI.Real());
			Add(MeleeAbortRange = new TI.Real());
			Add(BerserkFiringRange = new TI.RealBounds());
			Add(BerserkMeleeRange = new TI.Real());
			Add(BerserkMeleeAbortRange = new TI.Real());
			Add(new TI.Pad(8));
			#endregion

			#region grenades
			Add(GrenadeType = new TI.Enum());
			Add(TrajectoryType = new TI.Enum());
			Add(GrenadeStimulus = new TI.Enum());
			Add(MinEnemyCount = new TI.ShortInteger());
			Add(EnemyRadius = new TI.Real());
			Add(new TI.Pad(4));
			Add(GrenadeVelocity = new TI.Real());
			Add(GrenadeRanges = new TI.RealBounds());
			Add(CollateralDamageRadius = new TI.Real());
			Add(GrenadeChance = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(GrenadeCheckTime = new TI.Real());
			Add(EncounterGrenadeTimeout = new TI.Real());
			Add(new TI.Pad(20));
			#endregion

			#region items
			Add(Equipment = new TI.TagReference(this, TagGroups.eqip));
			Add(GrenadeCount = new TI.ShortIntegerBounds());
			Add(DontDropGrenadesChance = new TI.Real());
			Add(DropWeaponLoaded = new TI.RealBounds());
			Add(DropWeaponAmmo = new TI.ShortIntegerBounds());
			Add(new TI.Pad(12 + 16));
			#endregion

			#region unit
			Add(BodyVitality = new TI.Real());
			Add(ShieldVitality = new TI.Real());
			Add(ShieldSappingRadius = new TI.Real());
			Add(ForcedShaderPermutation = new TI.ShortInteger());
			Add(new TI.Pad(2 + 16 + 12));
			#endregion

			Add(ChangeColors = new TI.Block<actor_variant_change_colors_block>(this, 4));
		}
Esempio n. 47
0
		protected item_group(int field_count) : base(field_count + 17)
		{
			Add(ItemFlags = new TI.Flags());

			Add(MessageIndex = new TI.ShortInteger());
			Add(SortOrder = new TI.ShortInteger());
			Add(Scale = new TI.Real());
			Add(HudMessageValueScale = new TI.ShortInteger());
			Add(new TI.Pad(2 + 16));
			
			Add(AinDevice = new TI.Enum());
			Add(BinDevice = new TI.Enum());
			Add(CinDevice = new TI.Enum());
			Add(DinDevice = new TI.Enum());
			Add(new TI.Pad(164));

			Add(MaterialEffects = new TI.TagReference(this, TagGroups.foot));
			Add(CollisionSound = new TI.TagReference(this, TagGroups.snd_));
			Add(new TI.Pad(120));
			Add(DetonationDelay = new TI.RealBounds());
			Add(DetonatingEffect = new TI.TagReference(this, TagGroups.effe));
			Add(DetonationEffect = new TI.TagReference(this, TagGroups.effe));
		}
Esempio n. 48
0
			public unit_seat_block() : base(21)
			{
				Add(Flags = new TI.Flags());
				Add(Label = new TI.String());
				Add(MarkerName = new TI.String());
				Add(new TI.Pad(32));
				Add(AccelerationScale = new TI.RealVector3D());
				Add(new TI.Pad(12));
				Add(YawRate = new TI.Real());
				Add(PitchRate = new TI.Real());
				Add(CameraMarkerName = new TI.String());
				Add(CameraSugmergedMarkerName = new TI.String());
				Add(PitchAutoLevel = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
				Add(PitchRange = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
				Add(CameraTracks = new TI.Block<unit_camera_track_block>(this, 2));
				Add(UnitHudInterface = new TI.Block<unit_hud_reference_block>(this, 2));
				Add(new TI.Pad(4));
				Add(HudTextMessageIndex = new TI.ShortInteger());
				Add(new TI.Pad(2));
				Add(YawMin = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
				Add(YawMax = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
				Add(BuiltInGunner = new TI.TagReference(this, TagGroups.actv));
				Add(new TI.Pad(20));
			}
Esempio n. 49
0
		protected unit_group(int field_count) : base(field_count + 54)
		{
			Add(UnitFlags = new TI.Flags());
			Add(DefaultTeam = new TI.Enum());
			Add(ConstantSoundVolume = new TI.Enum());
			Add(RiderDamageFraction = new TI.Real());
			Add(IntegratedLightToggle = new TI.TagReference(this, TagGroups.effe));
			Add(AinUnit = new TI.Enum());
			Add(BinUnit = new TI.Enum());
			Add(CinUnit = new TI.Enum());
			Add(DinUnit = new TI.Enum());
			Add(CameraFieldOfView = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(CameraStiffness = new TI.Real());
			Add(CameraMarkerName = new TI.String());
			Add(CameraSubmergedMarkerName = new TI.String());
			Add(PitchAutoLevel = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(PitchRange = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
			Add(CameraTracks = new TI.Block<unit_camera_track_block>(this, 2));
			Add(SeatAccelerationScale = new TI.RealVector3D());
			Add(new TI.Pad(12));
			Add(SoftPingThreshold = new TI.Real());
			Add(SoftPingInterruptTime = new TI.Real());
			Add(HardPingThreshold = new TI.Real());
			Add(HardPingInterruptTime = new TI.Real());
			Add(HardDeathThreshold = new TI.Real());
			Add(FeignDeathThreshold = new TI.Real());
			Add(FeignDeathTime = new TI.Real());
			Add(DistOfEvadeAnim = new TI.Real());
			Add(DistOfDiveAnim = new TI.Real());
			Add(new TI.Pad(4));
			Add(StunnedMovementThreshold = new TI.Real());
			Add(FeignDeathChance = new TI.Real());
			Add(FeignRepeatChance = new TI.Real());
			Add(SpawnedActor = new TI.TagReference(this, TagGroups.actv));
			Add(SpawnedActorCount = new TI.ShortIntegerBounds());
			Add(SpawnedVelocity = new TI.Real());
			Add(AimingVelocityMax = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(AimingAccelerationMax = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(CasualAimingModifier = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(LookingVelocityMaximum = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(LookingAccelerationMax = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(new TI.Pad(8));
			Add(AiVehicleRadius = new TI.Real());
			Add(AiDangerRadius = new TI.Real());
			Add(MeleeDamage = new TI.TagReference(this, TagGroups.jpt_));
			Add(MotionSensorBlipSize = new TI.Enum());
			Add(new TI.Pad(2 + 12));
			Add(NewHudInterfaces = new TI.Block<unit_hud_reference_block>(this, 2));
			Add(DialogueVariants = new TI.Block<dialogue_variant_block>(this, 16));
			Add(GrenadeVelocity = new TI.Real());
			Add(GrenadeType = new TI.Enum());
			Add(GrenadeCount = new TI.ShortInteger());
			Add(new TI.Pad(4));
			Add(PoweredSeats = new TI.Block<powered_seat_block>(this, 2));
			Add(Weapons = new TI.Block<unit_weapon_block>(this, 4));
			Add(Seats = new TI.Block<unit_seat_block>(this, 16));
		}
Esempio n. 50
0
			public triggers_block() : base(41)
			{
				Add(Flags = new TI.Flags());

				Add(RoundsPerSecond = new TI.RealBounds());
				Add(FiringAccelerationTime = new TI.Real());
				Add(FiringDecelerationTime = new TI.Real());
				Add(BlurredRateOfFire = new TI.Real());
				Add(new TI.Pad(8));
				Add(Magazine = new TI.BlockIndex());
				Add(RoundsPerShot = new TI.ShortInteger());
				Add(MinRoundsLoaded = new TI.ShortInteger());
				Add(RoundsBetweenTracers = new TI.ShortInteger());
				Add(new TI.Pad(6));
				Add(FiringNoise = new TI.Enum());

				Add(Error = new TI.RealBounds());
				Add(ErrorAccelerationTime = new TI.Real());
				Add(ErrorDecelerationTime = new TI.Real());
				Add(new TI.Pad(8));

				Add(ChargingTime = new TI.Real());
				Add(ChargedTime = new TI.Real());
				Add(OverchargedAction = new TI.Enum());
				Add(new TI.Pad(2));
				Add(ChargedIllumination = new TI.Real());
				Add(SpewTime = new TI.Real());
				Add(ChargingEffect = new TI.TagReference(this));

				Add(DistributionFunction = new TI.Enum());
				Add(ProjectilesPerShot = new TI.ShortInteger());
				Add(DistributionAngle = new TI.Real());
				Add(new TI.Pad(4));
				Add(MinError = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
				Add(ErrorAngle = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
				Add(FirstPersionOffset = new TI.RealPoint3D());
				Add(new TI.Pad(4));
				Add(Projectile = new TI.TagReference(this, TagGroups.proj));

				Add(EjectionPortRecoveryTime = new TI.Real());
				Add(IlluminationRecoveryTime = new TI.Real());
				Add(new TI.Pad(12));
				Add(HeatGeneratedPerRound = new TI.Real());
				Add(AgeGeneratedPerRound = new TI.Real());
				Add(new TI.Pad(4));
				Add(OverloadTime = new TI.Real());
				Add(new TI.Pad(8 + 32 + 24));
				
				Add(FiringEffects = new TI.Block<trigger_firing_effect_block>(this, 8));
			}
Esempio n. 51
0
				public structure_bsp_subcluster_block() : base(4)
				{
					Add(WorldBoundsX = new TI.RealBounds());
					Add(WorldBoundsY = new TI.RealBounds());
					Add(WorldBoundsZ = new TI.RealBounds());
					Add(SurfaceIndices = new TI.Block<field_block<TI.LongInteger>>(this, 128));
				}
Esempio n. 52
0
		public actor_group() : base(124)
		{
			Add(Flags = new TI.Flags());
			Add(MoreFlags = new TI.Flags());
			Add(new TI.Pad(12));
			Add(Type = new TI.Enum());
			Add(new TI.Pad(2));

			#region perception
			Add(MaxVisionDist = new TI.Real());
			Add(CentralVisionAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(MaxVisionAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(new TI.Pad(4));
			Add(PeripheralVisionAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(PeripheralDist = new TI.Real());
			Add(new TI.Pad(4));
			Add(StandingGunOffset = new TI.RealVector3D());
			Add(CrouchingGunOffset = new TI.RealVector3D());
			Add(HearingDist = new TI.Real());
			Add(NoticeProjectileChance = new TI.Real());
			Add(NoticeVehicleChance = new TI.Real());
			Add(new TI.Pad(8));
			Add(CombatPerceptionTime = new TI.Real());
			Add(GuardPerceptionTime = new TI.Real());
			Add(NonCombatPerceptionTime = new TI.Real());
			Add(new TI.Pad(12 + 8));
			#endregion

			#region movement
			Add(DiveIntoCoverChance = new TI.Real());
			Add(EmergeFromCoverChance = new TI.Real());
			Add(DiveFromGrenadeChance = new TI.Real());
			Add(PathfindingRadius = new TI.Real());
			Add(GlassIgnoranceChance = new TI.Real());
			Add(StationaryMovementDist = new TI.Real());
			Add(FreeFlyingSidestep = new TI.Real());
			Add(BeginMovingAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(new TI.Pad(4));
			#endregion

			#region looking
			Add(MaxAimingDeviation = new TI.RealEulerAngles2D());
			Add(MaxLookingDeviation = new TI.RealEulerAngles2D());
			Add(NonCombatLookDeltaL = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(NonCombatLookDeltaR = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(CombatLookDeltaL = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(CombatLookDeltaR = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(IdleAimingRange = new TI.RealEulerAngles2D());
			Add(IdleLookingRange = new TI.RealEulerAngles2D());
			Add(EventLookTimeModifier = new TI.RealBounds());
			Add(NonCombatIdleFacing = new TI.RealBounds());
			Add(NonCombatIdleAiming = new TI.RealBounds());
			Add(NonCombatIdleLooking = new TI.RealBounds());
			Add(GuardIdleFacing = new TI.RealBounds());
			Add(GuardIdleAiming = new TI.RealBounds());
			Add(GuardIdleLooking = new TI.RealBounds());
			Add(CombatIdleFacing = new TI.RealBounds());
			Add(CombatIdleAiming = new TI.RealBounds());
			Add(CombatIdleLooking = new TI.RealBounds());
			Add(new TI.Pad(8 + 16));
			#endregion

			Add(DoNotUseWeapon = new TI.TagReference(this, TagGroups.weap));
			Add(new TI.Pad(268));
			Add(DoNotUseProjectile = new TI.TagReference(this, TagGroups.proj));

			#region unopposable
			Add(UnreachableDangerTrigger = new TI.Enum());
			Add(VehicleDangerTrigger = new TI.Enum());
			Add(PlayerDangerTrigger = new TI.Enum());
			Add(new TI.Pad(2));
			Add(DangerTriggerTime = new TI.RealBounds());
			Add(FriendsKilledTrigger = new TI.ShortInteger());
			Add(FriendsRetreatingTrigger = new TI.ShortInteger());
			Add(new TI.Pad(12));
			Add(RetreatTime = new TI.RealBounds());
			Add(new TI.Pad(8));
			#endregion

			#region panic
			Add(CoveringTime = new TI.RealBounds());
			Add(FriendKilledPanicChance = new TI.Real());
			Add(LeaderType = new TI.Enum());
			Add(new TI.Pad(2));
			Add(LeaderKilledPanicChance = new TI.Real());
			Add(PanicDamageThreshold = new TI.Real());
			Add(SurpriseDist = new TI.Real());
			Add(new TI.Pad(28));
			#endregion

			#region defensive
			Add(HideBehindCoverTime = new TI.RealBounds());
			Add(HideTagerNotVisibleTime = new TI.Real());
			Add(HideShieldFraction = new TI.Real());
			Add(AttackShieldFraction = new TI.Real());
			Add(PursueShieldFraction = new TI.Real());
			Add(new TI.Pad(16));
			Add(DefensiveCrouchType = new TI.Enum());
			Add(new TI.Pad(2));
			Add(AttackingCrouchThreshold = new TI.Real());
			Add(DefendingCrouchThreshold = new TI.Real());
			Add(MinStandTime = new TI.Real());
			Add(MinCrouchTime = new TI.Real());
			Add(DefendingHideTime = new TI.Real());
			Add(AttackingEvasionThreshold = new TI.Real());
			Add(DefendingEvasionThreshold = new TI.Real());
			Add(EvasionSeekCoverChance = new TI.Real());
			Add(EvasionDelayTime = new TI.Real());
			Add(MaxSeekCoverDist = new TI.Real());
			Add(CoverDamageThreshold = new TI.Real());
			Add(StalkingDiscoveryTime = new TI.Real());
			Add(StalkingMaxDist = new TI.Real());
			Add(StationaryFacingAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(ChangeFacingStandTime = new TI.Real());
			Add(new TI.Pad(4));
			#endregion

			#region pursuit
			Add(UncoverDelayTimer = new TI.RealBounds());
			Add(TargetSearchTime = new TI.RealBounds());
			Add(PursuitPositionTime = new TI.RealBounds());
			Add(NumPositionsCoord = new TI.ShortInteger());
			Add(NumPositionsNormal = new TI.ShortInteger());
			Add(new TI.Pad(32));
			#endregion

			#region berserk
			Add(MeleeAttackDelay = new TI.Real());
			Add(MeleeFudgeFactor = new TI.Real());
			Add(MeleeChargeTime = new TI.Real());
			Add(MeleeLeapRange = new TI.RealBounds());
			Add(MeleeLeapVelocity = new TI.Real());
			Add(MeleeLeapChance = new TI.Real());
			Add(MeleeLeapBallistic = new TI.Real());
			Add(BerserkDamageAmount = new TI.Real());
			Add(BerserkDamageThreshold = new TI.Real());
			Add(BerserkProximity = new TI.Real());
			Add(SuicideSensingDist = new TI.Real());
			Add(BerserkGrenadeChance = new TI.Real());
			Add(new TI.Pad(12));
			#endregion

			#region firing positions
			Add(GuardPositionTIme = new TI.RealBounds());
			Add(CombatPositionTime = new TI.RealBounds());
			Add(OldPositionAvoidDist = new TI.Real());
			Add(FriendAvoidDist = new TI.Real());
			Add(new TI.Pad(40));
			#endregion

			#region communication
			Add(NoncombatIdleSpeechTime = new TI.RealBounds());
			Add(CombatIdleSpechTime = new TI.RealBounds());
			Add(new TI.Pad(48 + 128));
			#endregion

			Add(DoNotUseMajorUpgrade = new TI.TagReference(this, TagGroups.actr));
			Add(new TI.Pad(48));
		}
Esempio n. 53
0
		public model_collision_group() : base(42)
		{
			Add(Flags = new TI.Flags());
			Add(IndirectDamageMaterial = new TI.BlockIndex());
			Add(new TI.Pad(2));
			Add(MaximumBodyVitality = new TI.Real());
			Add(BodySystemShock = new TI.Real());
			Add(new TI.Pad(24 + 28));
			Add(FriendlyDamageResistance = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(new TI.Pad(8 + 32));
			Add(LocalizedDamageEffect = new TI.TagReference(this, TagGroups.effe));
			Add(AreaDamageEffectThreshold = new TI.Real());
			Add(AreaDamageEffect = new TI.TagReference(this, TagGroups.effe));
			Add(BodyDamagedThreshold = new TI.Real());
			Add(BodyDamagedEffect = new TI.TagReference(this, TagGroups.effe));
			Add(BodyDepletedEffect = new TI.TagReference(this, TagGroups.effe));
			Add(BodyDestroyedThreshold = new TI.Real());
			Add(BodyDestroyedEffect = new TI.TagReference(this, TagGroups.effe));
			Add(MaximumShieldVitality = new TI.Real());
			Add(new TI.Pad(2));
			Add(ShieldMaterialType = new TI.Enum());
			Add(new TI.Pad(24));
			Add(ShieldFailureFunction = new TI.Enum());
			Add(new TI.Pad(2));
			Add(ShieldFailureThreshold = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(FailingShieldLeakFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(new TI.Pad(16));
			Add(MinimumStunDamage = new TI.Real());
			Add(StunTime = new TI.Real());
			Add(RechargeTime = new TI.Real());
			Add(new TI.Pad(16 + 96));
			Add(ShieldDamagedThreshold = new TI.Real());
			Add(ShieldDamagedEffect = new TI.TagReference(this, TagGroups.effe));
			Add(ShieldDepletedEffect = new TI.TagReference(this, TagGroups.effe));
			Add(ShieldRechargingEffect = new TI.TagReference(this, TagGroups.effe));
			Add(new TI.Pad(12 + 112));
			Add(Materials = new TI.Block<damage_materials_block>(this, 32));
			Add(Regions = new TI.Block<damage_regions_block>(this, 8));
			Add(new TI.Pad(12 + 16)); // Modifiers isn't used
			Add(X = new TI.RealBounds());
			Add(Y = new TI.RealBounds());
			Add(Z = new TI.RealBounds());
			Add(PathfindingSpheres = new TI.Block<pathfinding_spheres_block>(this, 32));
			Add(Nodes = new TI.Block<collision_nodes_block>(this, 64));
		}
Esempio n. 54
0
			public global_hud_multitexture_overlay_effector_definition() : base(15)
			{
				Add(new TI.Pad(64));
				Add(DestType = new TI.Enum());
				Add(Dest = new TI.Enum());
				Add(Source = new TI.Enum());
				Add(new TI.Pad(2));

				Add(InBounds = new TI.RealBounds());
				Add(OutBounds = new TI.RealBounds());
				Add(new TI.Pad(64));

				Add(TintColorLowerBound = new TI.RealColor());
				Add(TintColorUpperBound = new TI.RealColor());

				Add(PeriodicFunction = new TI.Enum());
				Add(new TI.Pad(2));
				Add(FunctionPeriod = new TI.Real());
				Add(FunctionPhase = new TI.Real());
				Add(new TI.Pad(32));
			}
Esempio n. 55
0
		public global_hud_screen_effect_definition() : base(20)
		{
			Add(new TI.Pad(4));
			Add(MaskFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
			Add(new TI.Pad(2 + 16));
			Add(MaskFullscreen = new TI.TagReference(this, TagGroups.bitm));
			Add(MaskSplitscreen = new TI.TagReference(this, TagGroups.bitm));
			Add(new TI.Pad(8));

			Add(ConvolutionFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
			Add(new TI.Pad(2));
			Add(FovInBounds = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
			Add(RadiusOutBounds = new TI.RealBounds());
			Add(new TI.Pad(24));

			Add(NightVisionFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
			Add(NightVisionScriptSource = new TI.ShortInteger());
			Add(NightVisionIntensity = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(new TI.Pad(24));

			Add(DesaturationFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
			Add(DesaturationScriptSource = new TI.ShortInteger());
			Add(DesaturationIntensity = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(DesaturationTint = new TI.RealColor());
			Add(new TI.Pad(24));
		}
Esempio n. 56
0
		public sound_scale_modifiers_struct() : base(3)
		{
			Add(GainModifier = new TI.RealBounds());
			Add(PitchModifier = new TI.ShortIntegerBounds());
			Add(SkipFractionModifier = new TI.RealBounds(TI.FieldType.RealFractionBounds));
		}
Esempio n. 57
0
			public projectile_material_response_block() : base(21)
			{
				Add(Flags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));

				Add(Response = new TI.Enum());
				Add(Effect = new TI.TagReference(this, TagGroups.effe));
				Add(new TI.Pad(16));

				Add(PotentialResponse = new TI.Enum());
				Add(PotentialFlags = new TI.Flags(BlamLib.TagInterface.FieldType.WordFlags));
				Add(SkipFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
				Add(Between = new TI.RealBounds(BlamLib.TagInterface.FieldType.AngleBounds));
				Add(And = new TI.RealBounds());
				Add(PotentialEffect = new TI.TagReference(this, TagGroups.effe));
				Add(new TI.Pad(16));

				Add(ScaleEffectsBy = new TI.Enum());
				Add(TI.Pad.Word);
				Add(AngularNoise = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
				Add(VelocityNoise = new TI.Real());
				Add(DetonationEffect = new TI.TagReference(this, TagGroups.effe));
				Add(new TI.Pad(24));

				Add(InitialFriction = new TI.Real());
				Add(MaxDist = new TI.Real());

				Add(ParallelFriction = new TI.Real());
				Add(PerpendicularFriction = new TI.Real());
			}
Esempio n. 58
0
		public weapon_group() : base(67)
		{
			Add(Flags = new TI.Flags());
			Add(Label = new TI.String());
			Add(SecondaryTriggerMode = new TI.Enum());
			Add(MaxAltShotsLoaded = new TI.ShortInteger());
			Add(AinWeapon = new TI.Enum());
			Add(BinWeapon = new TI.Enum());
			Add(CinWeapon = new TI.Enum());
			Add(DinWeapon = new TI.Enum());
			Add(ReadyTime = new TI.Real());
			Add(ReadyEffect = new TI.TagReference(this));
			Add(HeatRecoveryThreshold = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(OverheatedThreshold = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(HeatDetonationThreshold = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(HeatDetonationFraction = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(HeatLossPerSecond = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(HeatIllumination = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(new TI.Pad(16));
			Add(Overheated = new TI.TagReference(this));
			Add(Detonation = new TI.TagReference(this));
			Add(PlayerMeleeDamage = new TI.TagReference(this, TagGroups.jpt_));
			Add(PlayerMeleeResponse = new TI.TagReference(this, TagGroups.jpt_));
			Add(new TI.Pad(8));

			Add(ActorFiringParameters = new TI.TagReference(this, TagGroups.actv));

			Add(NearRecticleRange = new TI.Real());
			Add(FarReticleRange = new TI.Real());
			Add(IntersectionRecticleRange = new TI.Real());
			
			Add(new TI.Pad(2));
			Add(MagnificationLevel = new TI.ShortInteger());
			Add(MagnificationRange = new TI.RealBounds());

			Add(AutoaimAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(AutoaimRange = new TI.Real());
			Add(MagnetismAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(MagnetismRange = new TI.Real());
			Add(DeviationAngle = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			Add(new TI.Pad(4));

			Add(MovementPenalized = new TI.Enum());
			Add(new TI.Pad(2));
			Add(ForwardMovementPenalty = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(SidewaysMovementPenalty = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(new TI.Pad(4));

			Add(MinTargetRange = new TI.Real());
			Add(LookingTimeModifier = new TI.Real());
			Add(new TI.Pad(4));

			Add(LightPowerOnTime = new TI.Real());
			Add(LightPowerOffTime = new TI.Real());
			Add(LightPowerOnEffect = new TI.TagReference(this));
			Add(LightPowerOffEffect = new TI.TagReference(this));
			Add(AgeHeatRecoveryPenalty = new TI.Real());
			Add(AgeRateOfFirePenalty = new TI.Real());
			Add(AgeMisfireStart = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(AgeMisfireChance = new TI.Real(BlamLib.TagInterface.FieldType.RealFraction));
			Add(new TI.Pad(12));

			Add(FirstPersonModel = new TI.TagReference(this, TagGroups.mode));
			Add(FirstPersonAnimations = new TI.TagReference(this, TagGroups.ant_));
			Add(new TI.Pad(4));
			Add(HudInterface = new TI.TagReference(this, TagGroups.wphi));
			Add(PickupSound = new TI.TagReference(this, TagGroups.snd_));
			Add(ZoomInSound = new TI.TagReference(this, TagGroups.snd_));
			Add(ZoomOutSound = new TI.TagReference(this, TagGroups.snd_));
			Add(new TI.Pad(12));
			Add(ActiveCamoDing = new TI.Real());
			Add(ActiveCamoRegrowth = new TI.Real());
			Add(new TI.Pad(12 + 2));

			Add(WeaponType = new TI.Enum());
			Add(PredictedResourcesWeapon = new TI.Block<predicted_resource_block>(this, 1024));
			Add(Magazines = new TI.Block<magazines_block>(this, 2));
			Add(Triggers = new TI.Block<triggers_block>(this, 2));
		}
Esempio n. 59
0
		public structure_bsp_cluster_block() : base()
		{
			Add(BoundsX = new TI.RealBounds());
			Add(BoundsY = new TI.RealBounds());
			Add(BoundsZ = new TI.RealBounds());
			Add(ScenarioSkyIndex = new TI.ByteInteger());
			Add(MediaIndex = new TI.ByteInteger());
			Add(ScenarioVisibleSkyIndex = new TI.ByteInteger());
			Add(ScenarioAtmosphericFogIndex = new TI.ByteInteger());
			Add(new TI.ShortInteger());
			Add(new TI.ShortInteger());
			Add(BackgroundSound = new TI.BlockIndex()); // 1 structure_bsp_background_sound_palette_block
			Add(SoundEnvironment = new TI.BlockIndex()); // 1 structure_bsp_sound_environment_palette_block
			Add(Weather = new TI.BlockIndex()); // 1 structure_bsp_weather_palette_block
			Add(new TI.ShortInteger()); // TransitionStructureBsp?
			Add(new TI.ShortInteger()); // block index?
			Add(new TI.BlockIndex()); // doesnt seem to be to anything in the actual bsp data
			Add(new TI.ShortInteger()); // flags?
			Add(new TI.Flags(TI.FieldType.WordFlags));
			Add(TI.UnknownPad.BlockHalo3); // ??
			Add(TI.UnknownPad.BlockHalo3); // [0x2]
			Add(new TI.UnknownPad(4 + 20)); // '20' starts a hkShapeContainer object
			Add(new TI.TagReference(this, TagGroups.sbsp));
			Add(new TI.UnknownPad(32));
			Add(CollisionMoppCode = new TI.Block<mopp_code_block>(this, 0));
			Add(TI.UnknownPad.DWord);
			Add(TI.UnknownPad.BlockHalo3); // [0x4]
			// 0xAC
			Add(TI.UnknownPad.BlockHalo3); // [0x30]
				// short (count, w/e the elements are they are sizeof(0x10))
				// short (or two bytes)
				// long offset
				// real_point3d
				// real[4]
				// real_point3d
			Add(TI.UnknownPad.BlockHalo3); // ??
			Add(TI.UnknownPad.BlockHalo3); // [0x4]
				// short
				// short
			Add(TI.UnknownPad.BlockHalo3); // [0x10]
				// real_point3d
				// short
				// short
		}
Esempio n. 60
0
		public projectile_group() : base(31)
		{
			Add(Flags = new TI.Flags());
			Add(DetonationTimerStarts = new TI.Enum());
			Add(ImpactNoise = new TI.Enum());
			Add(AinProjectile = new TI.Enum());
			Add(BinProjectile = new TI.Enum());
			Add(CinProjectile = new TI.Enum());
			Add(DinProjectile = new TI.Enum());
			Add(SuperDetonation = new TI.TagReference(this, TagGroups.effe));
			Add(AiPerceptionRadius = new TI.Real());
			Add(CollisionRadius = new TI.Real());

			Add(ArmingTime = new TI.Real());
			Add(DangerRadius = new TI.Real());
			Add(Effect = new TI.TagReference(this, TagGroups.effe));
			Add(Timer = new TI.RealBounds());
			Add(MinVelocity = new TI.Real());
			Add(MaxRange = new TI.Real());

			Add(AirGravityScale = new TI.Real());
			Add(AirDamageRange = new TI.RealBounds());
			Add(WaterGravityScale = new TI.Real());
			Add(WaterDamageRange = new TI.RealBounds());
			Add(InitialVelocity = new TI.Real());
			Add(FinalVelocity = new TI.Real());
			Add(GuidedAngularVelocity = new TI.Real(BlamLib.TagInterface.FieldType.Angle));
			
			Add(DetonationNoise = new TI.Enum());
			Add(new TI.Pad(2));
			Add(DetonationStarted = new TI.TagReference(this, TagGroups.effe));
			Add(FlybySound = new TI.TagReference(this, TagGroups.snd_));
			Add(AttachedDetonationDamage = new TI.TagReference(this, TagGroups.jpt_));
			Add(ImpactDamage = new TI.TagReference(this, TagGroups.jpt_));
			Add(new TI.Pad(12));
			Add(MaterialResponses = new TI.Block<projectile_material_response_block>(this, 33));
		}