暂存
This commit is contained in:
Binary file not shown.
122
1.6/1.6/Defs/Thing_Misc/Weapons/ARA_Missile_Weapon.xml
Normal file
122
1.6/1.6/Defs/Thing_Misc/Weapons/ARA_Missile_Weapon.xml
Normal file
@@ -0,0 +1,122 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Defs>
|
||||
<ThingDef ParentName="BaseBullet">
|
||||
<defName>Bullet_RW_Missile_AR_Gun</defName>
|
||||
<label>微型酸烧导弹</label>
|
||||
<graphicData>
|
||||
<graphicClass>Graphic_Single_AgeSecs</graphicClass>
|
||||
<texPath>ArachnaeSwarm/Mote/ARA_CatastropheMissile_Shell</texPath>
|
||||
<drawSize>(1,1)</drawSize>
|
||||
<shaderType>MoteGlow</shaderType>
|
||||
</graphicData>
|
||||
<thingClass>ArachnaeSwarm.Projectile_ExplosiveTrackingBullet</thingClass>
|
||||
<projectile>
|
||||
<speed>60</speed>
|
||||
<damageDef>ARA_AcidBurn</damageDef>
|
||||
<damageAmountBase>5</damageAmountBase>
|
||||
<filth>Filth_SpentAcid</filth>
|
||||
<filthCount>2</filthCount>
|
||||
<explosionSpawnsSingleFilth>true</explosionSpawnsSingleFilth>
|
||||
<explosionRadius>1.1</explosionRadius>
|
||||
<explosionEffect>Shell_AcidSpitImpact</explosionEffect>
|
||||
<explosionEffectLifetimeTicks>60</explosionEffectLifetimeTicks>
|
||||
<soundExplode>Explosion_EMP</soundExplode>
|
||||
<armorPenetrationBase>0.25</armorPenetrationBase>
|
||||
<screenShakeFactor>0.5</screenShakeFactor>
|
||||
<flyOverhead>true</flyOverhead>
|
||||
</projectile>
|
||||
<modExtensions>
|
||||
<li Class="ArachnaeSwarm.ExplosiveTrackingBulletDef">
|
||||
<explosionRadius>1.1</explosionRadius>
|
||||
<damageDef>ARA_AcidBurn</damageDef>
|
||||
</li>
|
||||
<li Class="ArachnaeSwarm.TrackingBulletDef">
|
||||
<homingSpeed>0.75</homingSpeed>
|
||||
<initRotateAngle>15</initRotateAngle>
|
||||
<destroyTicksAfterLosingTrack>
|
||||
<min>60</min>
|
||||
<max>120</max>
|
||||
</destroyTicksAfterLosingTrack>
|
||||
<tailFleckDef>Fleck_AcidSpitLaunchedDenseMist</tailFleckDef>
|
||||
<fleckMakeFleckTickMax>3</fleckMakeFleckTickMax>
|
||||
<impactThreshold>1</impactThreshold>
|
||||
</li>
|
||||
</modExtensions>
|
||||
</ThingDef>
|
||||
|
||||
<ThingDef ParentName="BaseHumanMakeableGun">
|
||||
<defName>ARA_RW_Missile_AR_Gun</defName>
|
||||
<label>武装器官"迅发天灾炮"</label>
|
||||
<description>阿拉克涅虫群的大型武装器官,成排的发射出微型酸爆虫导弹。这种武器的特点就是其巨大的弹容量和全自动发射爆炸导弹。</description>
|
||||
<tickerType>Normal</tickerType>
|
||||
<techLevel>Animal</techLevel>
|
||||
<descriptionHyperlinks>
|
||||
<ThingDef>ARA_Cocoon_Weapon_2Stage</ThingDef>
|
||||
</descriptionHyperlinks>
|
||||
<graphicData>
|
||||
<texPath>ArachnaeSwarm/Weapon/ARA_RW_Basic_SniperCannon_Gun</texPath>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<drawSize>1.5</drawSize>
|
||||
</graphicData>
|
||||
<uiIconScale>0.75</uiIconScale>
|
||||
<soundInteract>SpitterSpawn</soundInteract>
|
||||
<recipeMaker>
|
||||
<recipeUsers Inherit="False" />
|
||||
<researchPrerequisite>ARA_Technology_7PAV</researchPrerequisite>
|
||||
<unfinishedThingDef>UnfinishedWeapon</unfinishedThingDef>
|
||||
</recipeMaker>
|
||||
<statBases>
|
||||
<WorkToMake>1300</WorkToMake>
|
||||
<!-- <MarketValue>370</MarketValue> -->
|
||||
<Mass>4</Mass>
|
||||
<AccuracyTouch>0.5</AccuracyTouch>
|
||||
<AccuracyShort>0.4</AccuracyShort>
|
||||
<AccuracyMedium>0.35</AccuracyMedium>
|
||||
<AccuracyLong>0.3</AccuracyLong>
|
||||
<RangedWeapon_Cooldown>2.5</RangedWeapon_Cooldown>
|
||||
</statBases>
|
||||
<verbs>
|
||||
<li>
|
||||
<verbClass>Verb_Shoot</verbClass>
|
||||
<hasStandardCommand>true</hasStandardCommand>
|
||||
<forceNormalTimeSpeed>false</forceNormalTimeSpeed>
|
||||
<warmupTime>0.8</warmupTime>
|
||||
<defaultProjectile>Bullet_RW_Missile_AR_Gun</defaultProjectile>
|
||||
<range>38</range>
|
||||
<burstShotCount>8</burstShotCount>
|
||||
<ticksBetweenBurstShots>4</ticksBetweenBurstShots>
|
||||
<soundCast>SpitterSpit</soundCast>
|
||||
<targetParams>
|
||||
<canTargetLocations>true</canTargetLocations>
|
||||
</targetParams>
|
||||
</li>
|
||||
</verbs>
|
||||
<costList Inherit="False">
|
||||
<ARA_Carapace>50</ARA_Carapace>
|
||||
</costList>
|
||||
<weaponTags>
|
||||
<li>ARA_Armed_Organ</li>
|
||||
<li>ARA_Armed_Organ_Ranged</li>
|
||||
<li>ARA_Armed_Organ_T2</li>
|
||||
</weaponTags>
|
||||
<thingSetMakerTags>
|
||||
<li>RewardStandardQualitySuper</li>
|
||||
</thingSetMakerTags>
|
||||
<comps>
|
||||
<li Class="ArachnaeSwarm.CompProperties_GiveHediffOnShot">
|
||||
<hediffDef>ARA_ChainReload</hediffDef>
|
||||
<severityToAdd>1</severityToAdd>
|
||||
</li>
|
||||
<li Class="ArachnaeSwarm.CompProperties_CustomUniqueWeapon" MayRequire="Ludeon.RimWorld.Odyssey">
|
||||
<forcedTraits>
|
||||
<li>ARA_Huge_Weapon</li>
|
||||
<li>ARA_Weapon_Damage_Acid</li>
|
||||
</forcedTraits>
|
||||
<numTraitsRange>
|
||||
<min>2</min>
|
||||
<max>2</max>
|
||||
</numTraitsRange>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
</Defs>
|
||||
@@ -318,7 +318,7 @@
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="BaseBullet">
|
||||
<ThingDef ParentName="BaseBullet" Name="Bullet_ARA_RW_Basic_Fist_Needle_Gun" >
|
||||
<defName>Bullet_ARA_RW_Basic_Fist_Needle_Gun</defName>
|
||||
<label>毒针</label>
|
||||
<graphicData>
|
||||
@@ -335,6 +335,15 @@
|
||||
<speed>40</speed>
|
||||
</projectile>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="Bullet_ARA_RW_Basic_Fist_Needle_Gun">
|
||||
<defName>Bullet_ARA_RW_Basic_Fist_Needle_Gun_SG</defName>
|
||||
<label>毒针</label>
|
||||
<modExtensions>
|
||||
<li Class="ArachnaeSwarm.ShotgunExtension">
|
||||
<pelletCount>5</pelletCount>
|
||||
</li>
|
||||
</modExtensions>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="BaseHumanMakeableGun">
|
||||
<defName>ARA_RW_Toxic_Needle_MG</defName>
|
||||
<label>武装器官"风暴刺针枪"</label>
|
||||
@@ -405,6 +414,76 @@
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="BaseHumanMakeableGun">
|
||||
<defName>ARA_RW_Toxic_Needle_SG</defName>
|
||||
<label>武装器官"风暴链刺枪"</label>
|
||||
<description>阿拉克涅虫群督虫所使用的武装器官,拥有双联装多排排刺针管道,可以在联结神经束的指挥下交替发射大量的毒针,虽然准度较差但是威力不逊色于人类所使用的自动霰弹枪。</description>
|
||||
<tickerType>Normal</tickerType>
|
||||
<techLevel>Animal</techLevel>
|
||||
<descriptionHyperlinks>
|
||||
<ThingDef>ARA_Cocoon_Weapon_1Stage</ThingDef>
|
||||
</descriptionHyperlinks>
|
||||
<graphicData>
|
||||
<texPath>ArachnaeSwarm/Weapon/ARA_RW_Toxic_Needle_MG</texPath>
|
||||
<graphicClass>Graphic_Single</graphicClass>
|
||||
<drawSize>1</drawSize>
|
||||
</graphicData>
|
||||
<uiIconScale>1</uiIconScale>
|
||||
<soundInteract>SpitterSpawn</soundInteract>
|
||||
<recipeMaker>
|
||||
<recipeUsers Inherit="False" />
|
||||
<researchPrerequisite>ARA_Technology_6PAV</researchPrerequisite>
|
||||
<unfinishedThingDef>UnfinishedWeapon</unfinishedThingDef>
|
||||
</recipeMaker>
|
||||
<statBases>
|
||||
<WorkToMake>1300</WorkToMake>
|
||||
<!-- <MarketValue>370</MarketValue> -->
|
||||
<Mass>4</Mass>
|
||||
<AccuracyTouch>0.5</AccuracyTouch>
|
||||
<AccuracyShort>0.4</AccuracyShort>
|
||||
<AccuracyMedium>0.35</AccuracyMedium>
|
||||
<AccuracyLong>0.3</AccuracyLong>
|
||||
<RangedWeapon_Cooldown>2.5</RangedWeapon_Cooldown>
|
||||
</statBases>
|
||||
<verbs>
|
||||
<li>
|
||||
<verbClass>ArachnaeSwarm.Verb_ShootShotgun</verbClass>
|
||||
<hasStandardCommand>true</hasStandardCommand>
|
||||
<forceNormalTimeSpeed>false</forceNormalTimeSpeed>
|
||||
<warmupTime>0.8</warmupTime>
|
||||
<defaultProjectile>Bullet_ARA_RW_Basic_Fist_Needle_Gun_SG</defaultProjectile>
|
||||
<range>22</range>
|
||||
<burstShotCount>3</burstShotCount>
|
||||
<ticksBetweenBurstShots>12</ticksBetweenBurstShots>
|
||||
<soundCast>SpitterSpit</soundCast>
|
||||
<targetParams>
|
||||
<canTargetLocations>true</canTargetLocations>
|
||||
</targetParams>
|
||||
</li>
|
||||
</verbs>
|
||||
<costList Inherit="False">
|
||||
<ARA_Carapace>25</ARA_Carapace>
|
||||
</costList>
|
||||
<weaponTags>
|
||||
<li>ARA_Armed_Organ</li>
|
||||
<li>ARA_Armed_Organ_Ranged</li>
|
||||
<li>ARA_Armed_Organ_T2</li>
|
||||
</weaponTags>
|
||||
<thingSetMakerTags>
|
||||
<li>RewardStandardQualitySuper</li>
|
||||
</thingSetMakerTags>
|
||||
<comps>
|
||||
<li Class="ArachnaeSwarm.CompProperties_CustomUniqueWeapon" MayRequire="Ludeon.RimWorld.Odyssey">
|
||||
<forcedTraits>
|
||||
<li>ARA_Weapon_Damage_Toxid</li>
|
||||
</forcedTraits>
|
||||
<numTraitsRange>
|
||||
<min>1</min>
|
||||
<max>1</max>
|
||||
</numTraitsRange>
|
||||
</li>
|
||||
</comps>
|
||||
</ThingDef>
|
||||
<ThingDef ParentName="BaseHumanMakeableGun">
|
||||
<defName>ARA_RW_Basic_SniperCannon_Gun</defName>
|
||||
<label>武装器官"血链棘刺炮"</label>
|
||||
|
||||
@@ -96,22 +96,26 @@ namespace ArachnaeSwarm
|
||||
// modExtension_Cone.DoConeExplosion(position, map2, exactRotation, damageDef, launcher, damageAmount, armorPenetration, soundExplode, equipmentDef, def, thing, postExplosionSpawnThingDef, postExplosionSpawnChance, postExplosionSpawnThingCount, null, null, 255, false, null, 0f, 1, 0f, false, null, null, 1f, 0f, null, screenShakeFactor, null, null);
|
||||
// }
|
||||
|
||||
// Explosion effect (if needed, based on def.projectile.explosionEffect) - Currently not implemented for this class
|
||||
// bool flag2 = this.def.projectile.explosionEffect != null;
|
||||
// if (flag2)
|
||||
// {
|
||||
// Effecter effecter = this.def.projectile.explosionEffect.Spawn();
|
||||
// bool flag3 = this.def.projectile.explosionEffectLifetimeTicks != 0;
|
||||
// if (flag3)
|
||||
// {
|
||||
// map.effecterMaintainer.AddEffecterToMaintain(effecter, base.Position.ToVector3().ToIntVec3(), this.def.projectile.explosionEffectLifetimeTicks);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// effecter.Trigger(new TargetInfo(base.Position, map, false), new TargetInfo(base.Position, map, false), -1);
|
||||
// effecter.Cleanup();
|
||||
// }
|
||||
// }
|
||||
// Explosion effect (if needed, based on def.projectile.explosionEffect)
|
||||
bool flag2 = this.def.projectile.explosionEffect != null;
|
||||
if (flag2)
|
||||
{
|
||||
Effecter effecter = this.def.projectile.explosionEffect.Spawn();
|
||||
bool flag3 = this.def.projectile.explosionEffectLifetimeTicks != 0;
|
||||
if (flag3)
|
||||
{
|
||||
map.effecterMaintainer.AddEffecterToMaintain(effecter, ExactPosition.ToIntVec3(), this.def.projectile.explosionEffectLifetimeTicks);
|
||||
}
|
||||
else
|
||||
{
|
||||
effecter.Trigger(new TargetInfo(ExactPosition.ToIntVec3(), map, false), new TargetInfo(ExactPosition.ToIntVec3(), map, false), -1);
|
||||
effecter.Cleanup();
|
||||
}
|
||||
}
|
||||
if (def.projectile.explosionSpawnsSingleFilth && def.projectile.filth != null && def.projectile.filthCount.TrueMax > 0 && Rand.Chance(def.projectile.filthChance) && !base.Position.Filled(map))
|
||||
{
|
||||
FilthMaker.TryMakeFilth(base.Position, map, def.projectile.filth, def.projectile.filthCount.RandomInRange);
|
||||
}
|
||||
this.Destroy(DestroyMode.Vanish);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user