Difference between revisions of "User:Mehni"

From RimWorld Wiki
Jump to navigation Jump to search
(Blanked the page)
Tag: Blanking
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{stub}}
 
  
<source lang = "xml">
 
<?xml version="1.0" encoding="utf-8" ?>
 
<Defs>
 
 
    <!-- The Class="Plague.ThingDef_PlagueBullet links this XML Def to a Class. -->
 
    <!-- Our class is named ThingDef_PlagueBullet, and is found in the Plague namespace." -->
 
    <!-- Tags with an empty comment behind them are changed from their original values. -->
 
 
    <ThingDef Class="Plague.ThingDef_PlagueBullet" ParentName="BaseBullet">
 
        <defName>TST_Bullet_PlagueGun</defName> <!-- -->
 
        <label>plague bullet</label> <!-- -->
 
        <graphicData>
 
            <texPath>Things/Projectile/Bullet_Small</texPath>
 
            <graphicClass>Graphic_Single</graphicClass>
 
        </graphicData>
 
        <projectile>
 
            <flyOverhead>false</flyOverhead>
 
            <damageDef>Bullet</damageDef>
 
            <damageAmountBase>12</damageAmountBase>
 
            <stoppingPower>1</stoppingPower>
 
            <speed>55</speed>
 
        </projectile>
 
        <!-- The below three lines are added for the C# portion of the mod. -->
 
        <AddHediffChance>0.05</AddHediffChance>
 
        <HediffToAdd>Plague</HediffToAdd>
 
        <thingClass>Plague.Projectile_PlagueBullet</thingClass>
 
    </ThingDef>
 
</Defs>
 
</source>
 
 
<source lang="csharp">
 
using RimWorld;
 
using Verse;
 
 
namespace Plague
 
{
 
    public class ThingDef_PlagueBullet : ThingDef
 
    {
 
        public float AddHediffChance = 0.05f;
 
        public HediffDef HediffToAdd;
 
 
        public override void ResolveReferences()
 
        {
 
            HediffToAdd = HediffDefOf.Plague;
 
        }
 
    }
 
}
 
</source>
 
 
 
<source lang ="csharp">
 
using Verse;
 
using RimWorld;
 
 
namespace Plague
 
{
 
    public class Projectile_PlagueBullet : Bullet
 
    {
 
        #region Properties
 
        public ThingDef_PlagueBullet Def
 
        {
 
            get
 
            {
 
                //Case sensitive! If you use Def it will return Def, which is this getter. This will cause a never ending cycle and a stack overflow.
 
                return this.def as ThingDef_PlagueBullet;
 
            }
 
        }
 
        #endregion
 
 
        #region Overrides
 
        protected override void Impact(Thing hitThing)
 
        {
 
            /* This is a call to the Impact method of the class we're inheriting from.
 
            * You can use your favourite decompiler to see what it does, but suffice to say
 
            * there are useful things in there, like damaging/killing the hitThing.
 
            */
 
            base.Impact(hitThing);
 
 
        }
 
        #endregion Overrides
 
    }
 
}
 
</source>
 

Latest revision as of 19:21, 7 May 2019