// Token: 0x06000027 RID: 39 RVA: 0x00002B44 File Offset: 0x00000D44 public void UseJetPack(Pawn pilot, Thing JP, IntVec3 targCell) { if (!this.JPComposMentis(pilot, JP, out string Reason)) { Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.CantDo", pilot, Reason), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); return; } if (!this.FlightChecksOK(pilot, JP, out string ChecksReason)) { Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.ChecksReason", GenText.CapitalizeFirst(pilot.LabelShort), ChecksReason), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); return; } if (JPUtility.ChkForDissallowed(pilot, out string DAllowReason)) { Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.DAllowReason", GenText.CapitalizeFirst(pilot.LabelShort), DAllowReason), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); return; } if (!this.FlightCellCheck(pilot, targCell, this.JPFuelAmount, this.JPFuelRate, this.JPJumpRangeMin, this.JPJumpRangeMax, out string JumpReason)) { Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.JumpReason", JumpReason), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); return; } if (!JPInjury.CheckForExplosion(this)) { this.DoJumpJet(pilot, targCell); return; } JPInjury.DoJPExplosion(pilot, this.JPFuelAmount, this.JPFuelItem); this.JPFuelAmount = 0; }
private void DoBottomButtons(Rect rect) { Rect rect2 = new Rect(rect.width / 2f - this.BottomButtonSize.x / 2f, rect.height - 55f - 17f, this.BottomButtonSize.x, this.BottomButtonSize.y); if (Widgets.ButtonText(rect2, "AcceptButton".Translate(), true, false, true)) { if (this.TryAccept()) { SoundStarter.PlayOneShotOnCamera(SoundDefOf.Tick_High, null); this.Close(false); } } Rect rect3 = new Rect(rect2.x - 10f - this.BottomButtonSize.x, rect2.y, this.BottomButtonSize.x, this.BottomButtonSize.y); if (Widgets.ButtonText(rect3, "ResetButton".Translate(), true, false, true)) { SoundDefOf.Tick_Low.PlayOneShotOnCamera(null); this.CalculateAndRecacheTransferables(); } if (this.ShowCancelButton) { Rect rect4 = new Rect(rect2.xMax + 10f, rect2.y, this.BottomButtonSize.x, this.BottomButtonSize.y); if (Widgets.ButtonText(rect4, "CancelButton".Translate(), true, false, true)) { this.Close(true); } } }
private void StartWickSustainer() { SoundStarter.PlayOneShot(CompExplosiveNuke.PreImpact, (SoundInfo)this.parent.Position); SoundInfo info = SoundInfo.InWorld((TargetInfo)((Thing)this.parent), MaintenanceType.PerTick); this.wickSoundSustainer = SoundStarter.TrySpawnSustainer(CompExplosiveNuke.Null, info); }
public override void Tick() { base.Tick(); Burnticks--; Burnticks2--; --this.drillticksRemaining; if (Burnticks == 0) { skydrillerEffect = new Skydriller_PlasmaBeam(base.Map, this.Position); base.Map.weatherManager.eventHandler.AddEvent(skydrillerEffect); Burnticks = 4; } if (Burnticks2 == 0) { MoteMaker.MakeStaticMote(base.Position, base.Map, ThingDefOf.Mote_ShotFlash, 9f); GenExplosion.DoExplosion(base.Position, base.Map, 1, DamageDefOf.Flame, (Thing)null, PlasmaDrill, (ThingDef)null); Burnticks2 = 4; } if (drillticksRemaining == 0) { Messages.Message("Ind_PlasmaDrillingComplete".Translate(), MessageSound.Standard); GenSpawn.Spawn(ThingDef.Named("Ind_MiningHole"), this.Position, base.Map); SoundStarter.PlayOneShot(Building_PlasmaDrillAction.PlasmaDrillFire, new TargetInfo(base.Position, base.Map, false)); ((Thing)this).Destroy((DestroyMode)0); } }
// Token: 0x0600000B RID: 11 RVA: 0x000022A8 File Offset: 0x000004A8 public static Command CampCommand(Caravan caravan) { Command_Action command_Action = new Command_Action(); command_Action.defaultLabel = "Set-Up Camp"; command_Action.defaultDesc = "Set-Up Camp"; command_Action.icon = SetUpCampTextures.CampCommandTex; command_Action.action = delegate() { SoundStarter.PlayOneShotOnCamera(SoundDefOf.Tick_High, null); Camp(caravan); }; bool flag = false; List <WorldObject> allWorldObjects = Find.WorldObjects.AllWorldObjects; for (int i = 0; i < allWorldObjects.Count; i++) { WorldObject worldObject = allWorldObjects[i]; bool flag2 = worldObject.Tile == caravan.Tile && worldObject != caravan; if (flag2) { flag = true; break; } } bool flag3 = flag; if (flag3) { command_Action.Disable(Translator.Translate("CommandSettleFailOtherWorldObjectsHere")); } return(command_Action); }
/* * Remove Construction Site */ public static Command RemoveConstructionSite(int tile) { // TO DO : Refactor this so we find the site first, to pass it to Deleteconstructionsite directly, or even get rid of that function all together Command_Action command_Action = new Command_Action(); command_Action.defaultLabel = "RoadsOfTheRimRemoveConstructionSite".Translate(); command_Action.defaultDesc = "RoadsOfTheRimRemoveConstructionSiteDescription".Translate(); command_Action.icon = ContentFinder <Texture2D> .Get("UI/Commands/RemoveConstructionSite", true); command_Action.action = delegate() { SoundStarter.PlayOneShotOnCamera(SoundDefOf.CancelMode, null); DeleteConstructionSite(tile); }; // Test when the RemoveConstructionSite action should be disabled (i.e. there's no construction site here) bool ConstructionSiteAlreadyHere = false; try { ConstructionSiteAlreadyHere = Find.WorldObjects.AnyWorldObjectOfDefAt(DefDatabase <WorldObjectDef> .GetNamed("RoadConstructionSite", true), tile); } catch { } if (!ConstructionSiteAlreadyHere) { command_Action.Disable("RoadsOfTheRimBuildConstructionSiteNotAlreadyHere".Translate()); } return(command_Action); }
public virtual void StartMusic(TuneDef parmDef = null) { if (state == State.off) { state = State.on; } //Establish duration //Cthulhu.Utility.DebugReport("Cur Time:" + Time.time.ToString()); duration = Time.time + currentTuneDef.durationTime; //Cthulhu.Utility.DebugReport(currentTuneDef.ToString() + " Fin Time:" + duration.ToString()); //Clear old song this.playingSong = null; //Put on new song SoundInfo soundInfo = SoundInfo.InMap(this, MaintenanceType.None); SoundDef soundDef = currentTuneDef as SoundDef; if (parmDef != null) { soundDef = parmDef as SoundDef; } this.playingSong = SoundStarter.TrySpawnSustainer(soundDef, soundInfo); }
public void UseShard() { SoundStarter.PlayOneShotOnCamera(SoundDefOf.Click, null); Job job = new Job(YautjaDefOf.RRY_Yautja_HealthShard); base.Wearer.jobs.TryTakeOrderedJob(job, 0); }
// Token: 0x0600000C RID: 12 RVA: 0x00002204 File Offset: 0x00000404 public void TendSelf() { SoundStarter.PlayOneShotOnCamera(SoundDefOf.Click, null); Job job = new Job(YautjaDefOf.RRY_Yautja_TendSelf); base.Wearer.jobs.TryTakeOrderedJob(job, 0); }
protected override void Impact(Thing hitThing) { Map map = base.Map; base.Impact(hitThing); if (hitThing != null) { int damageAmount = this.def.projectile.GetDamageAmount((float)base.DamageAmount, null); ThingDef equipmentDef = this.equipmentDef; float armorPenetration = this.def.projectile.GetArmorPenetration(base.ArmorPenetration, null); DamageInfo damageInfo = new DamageInfo(this.def.projectile.damageDef, (float)damageAmount, armorPenetration, this.ExactRotation.eulerAngles.y, this.launcher, null, equipmentDef, 0, null); hitThing.TakeDamage(damageInfo); Pawn pawn = hitThing as Pawn; if (pawn != null && !pawn.Downed && Rand.Value < this.compED.chanceToProc) { MoteMaker.ThrowMicroSparks(this.destination, base.Map); hitThing.TakeDamage(new DamageInfo(DefDatabase <DamageDef> .GetNamed(this.compED.damageDef, true), (float)this.compED.damageAmount, armorPenetration, this.ExactRotation.eulerAngles.y, this.launcher, null, null, 0, null)); return; } } else { SoundStarter.PlayOneShot(SoundDefOf.BulletImpact_Ground, new TargetInfo(base.Position, map, false)); MoteMaker.MakeStaticMote(this.ExactPosition, map, ThingDefOf.LaserMoteWorker, 0.5f); Projectile_HeatImpact.ThrowMicroSparksRed(this.ExactPosition, base.Map); } }
public static bool Patch_Pawn_PreApplyDamage_Prefix( ref Pawn __instance, ref DamageInfo dinfo, out bool absorbed) { if (((DamageInfo) ref dinfo).get_Def() != DamageDefOf.SurgicalCut && ((DamageInfo) ref dinfo).get_Def() != DamageDefOf.ExecutionCut && ((DamageInfo) ref dinfo).get_Def() != DamageDefOf.EMP && ((DamageInfo) ref dinfo).get_Def() != DamageDefOf.Stun && __instance.health != null && ((HediffSet)((Pawn_HealthTracker)__instance.health).hediffSet).HasHediff(MFHediffDefOf.MFBastionHigh, false) && ((HediffSet)((Pawn_HealthTracker)__instance.health).hediffSet).GetFirstHediffOfDef(MFHediffDefOf.MFBastionHigh, false) is ShieldHediff firstHediffOfDef) { if (firstHediffOfDef.broken) { firstHediffOfDef.ResetBrokenCooldown(); } else if (firstHediffOfDef.AbsorbDamage(dinfo)) { if (firstHediffOfDef.broken) { SoundStarter.PlayOneShot((SoundDef)SoundDefOf.EnergyShield_Broken, SoundInfo.op_Implicit(new TargetInfo(((Thing)__instance).get_Position(), ((Thing)__instance).get_Map(), false))); MoteMaker.MakeStaticMote(GenThing.TrueCenter((Thing)__instance), ((Thing)__instance).get_Map(), (ThingDef)ThingDefOf.Mote_ExplosionFlash, 12f); } else { SoundStarter.PlayOneShot((SoundDef)SoundDefOf.EnergyShield_AbsorbDamage, SoundInfo.op_Implicit(new TargetInfo(((Thing)__instance).get_Position(), ((Thing)__instance).get_Map(), false))); MoteMaker.MakeStaticMote(GenThing.TrueCenter((Thing)__instance), ((Thing)__instance).get_Map(), (ThingDef)ThingDefOf.Mote_ExplosionFlash, 6f); } if (!firstHediffOfDef.broken) { firstHediffOfDef.ResetHitCooldown(); } absorbed = true; return(false); } } absorbed = false; return(true); }
private void StartSpray() { SnowUtility.AddSnowRadial(this.OccupiedRect().RandomCell, Map, 4, -0.06f); spraySustainer = SoundStarter.TrySpawnSustainer(SoundDefOf.GeyserSpray, new TargetInfo(Position, Map)); spraySustainerStartTick = Find.TickManager.TicksGame; }
// Token: 0x0600002C RID: 44 RVA: 0x000031D8 File Offset: 0x000013D8 public void RefuelJP(Pawn pilot, Thing JP, bool Using) { if (Using) { if (this.JPComposMentis(pilot, JP, out string Reason)) { if (this.JPFuelAmount >= this.JPFuelMax) { Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.FullyFueled", GenText.CapitalizeFirst(JP.Label)), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); return; } JobDef JPRefuel = DefDatabase <JobDef> .GetNamed("JPRefuel", true); this.FindBestJPFuel(pilot, out Thing targ); if (targ != null) { Job job = new Job(JPRefuel, targ); pilot.jobs.TryTakeOrderedJob(job, 0); return; } Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.NoFuelFound", GenText.CapitalizeFirst(this.JPFuelItem.label)), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); return; } else { Messages.Message(TranslatorFormattedStringExtensions.Translate("JetPack.CantDo", pilot, Reason), pilot, MessageTypeDefOf.NeutralEvent, false); SoundStarter.PlayOneShotOnCamera(SoundDefOf.ClickReject, null); } } }
public static Command_Action SetUpCampCommand(Caravan caravan) { Command_Action command_Action = new Command_Action { defaultLabel = "SetUpCamp".Translate(), defaultDesc = "SetUpCampDesc".Translate(), icon = SetUpCampCommandTex, action = delegate() { SoundStarter.PlayOneShotOnCamera(SoundDefOf.Tick_High, null); Camp(caravan); } }; tmpSettleFailReason.Length = 0; if (!TileFinder.IsValidTileForNewSettlement(caravan.Tile, tmpSettleFailReason)) { command_Action.Disable(tmpSettleFailReason.ToString()); } if (Find.WorldObjects.AnyWorldObjectOfDefAt(SetUpCampDefOf.AbandonedCamp, caravan.Tile)) { command_Action.Disable("SetUpCampOccupied".Translate()); } return(command_Action); }
public void OpenCommsWith(Pawn negotiator, Faction faction) { Dialog_Negotiation dialog_Negotiation = new Dialog_Negotiation(negotiator, faction, ReinforcementDialogMakerRC.FactionDialogFor(negotiator, faction), true); //dialog_Negotiation.soundAmbient = RCDefsOf.AmbientRequisitionRelayRH; SoundStarter.PlayOneShot(RCDefsOf.PickUpRequisitionRelayRH, SoundInfo.OnCamera()); Find.WindowStack.Add(dialog_Negotiation); }
private void trainPawnDone(String def) { PawnGenerationRequest request = new PawnGenerationRequest(DefDatabase <PawnKindDef> .GetNamed(def, true), Faction.OfPlayer, PawnGenerationContext.NonPlayer, -1, false, false, false, false, true, true, 1f, false, true, true, false, false, false, false, null, null, null, null, null, null, null); Pawn item = PawnGenerator.GeneratePawn(request); Pawn_StoryTracker ps = item.story; ps.childhood = null; ps.adulthood = null; ps.traits.allTraits = new List <Trait>(); ps.traits.GainTrait(new Trait(DefDatabase <TraitDef> .GetNamed("ra2_MakeSoldier", true))); ps.traits.GainTrait(new Trait(TraitDefOf.Psychopath)); Pawn_WorkSettings pws = item.workSettings; pws.DisableAll(); Pawn_PlayerSettings pps = item.playerSettings; pps.hostilityResponse = HostilityResponseMode.Attack; NameTriple triple = NameTriple.FromString(item.kindDef.label.Replace(" ", "")); item.Name = triple; item.inventory.DestroyAll(); YuriSoldierMakeUp.tryMakeUp(item); SoundStarter.PlayOneShotOnCamera(DefDatabase <SoundDef> .GetNamed(this.parent.def.defName + "_UnitReady", true)); IntVec3 loc = CellFinder.RandomClosewalkCellNear(this.parent.Position, this.parent.Map, 3, null); Pawn pp; if (this.trainPawns[0] != "ra2_AlliedTanya") { pp = (Pawn)(GenSpawn.Spawn(item, loc, this.parent.Map, WipeMode.Vanish)); } else { // bool flag = true; if (getAllTanya().Count > 0) { foreach (Pawn tanya in getAllTanya()) { tanya.Destroy(DestroyMode.Vanish); } } pp = (Pawn)(GenSpawn.Spawn(getTanya(), loc, this.parent.Map, WipeMode.Vanish)); } this.trainPawns.Remove(this.trainPawns[0]); this.ticks = 0; }
internal static void ProgressHalfQuadrum(IEnumerable <CompUniversalFermenter> comps) { foreach (CompUniversalFermenter comp in comps) { comp.ProgressTicks += GenDate.TicksPerQuadrum / 2; } gooseAngle = Rand.Range(0, 360); SoundStarter.PlayOneShotOnCamera(UF_DefOf.UF_Honk); }
public void destoryAir(Thing t) { if (t is DropPodIncoming) { List <Thing> leftthing = new List <Thing>(); DropPodIncoming dp = t as DropPodIncoming; for (int i = dp.Contents.innerContainer.Count - 1; i >= 0; i--) { Thing thing = dp.Contents.innerContainer[i]; if (thing is Pawn) { Pawn p = thing as Pawn; p.Kill(null, null); //Corpse cp = ((Corpse)ThingMaker.MakeThing(p.RaceProps.corpseDef,null)); //cp.InnerPawn = p; //cp.GetComp<CompRottable>().RotImmediately(); //leftthing.Add(cp); leftthing.Add(p); } else { leftthing.Add(thing); } } Random rr = new Random(); foreach (Thing tt in leftthing) { if (!(tt is Pawn)) { int v = rr.Next(100); // Log.Warning(v+"/"+Settings.droppodCargoDropPercentage+"%"); if (v >= Settings.droppodCargoDropPercentage) { continue; } } GenPlace.TryPlaceThing(tt, t.Position, this.Map, ThingPlaceMode.Near); SoundStarter.PlayOneShot(SoundDefOf.DropPod_Open, new TargetInfo(tt)); } for (int i = 0; i < 3; i++) { Thing sl = ThingMaker.MakeThing(ThingDefOf.ChunkSlagSteel); GenPlace.TryPlaceThing(sl, t.Position, this.Map, ThingPlaceMode.Near); } } t.Destroy(); }
public void FinishReload() { SoundStarter.PlayOneShot(this.parent.def.soundInteract, SoundInfo.InWorld(this.Wielder.Position, 0)); if (this.reloaderProp.throwMote) { MoteThrower.ThrowText(this.Wielder.Position.ToVector3Shifted(), Translator.Translate("CR_ReloadedMote"), -1); } this.count = this.reloaderProp.roundPerMag; this.needReload = false; }
public override void Destroy(DestroyMode mode = DestroyMode.Vanish) { var position = this.Position; var map = base.Map; base.Destroy(mode); SoundStarter.PlayOneShot(PlasmaDrillFire, new TargetInfo(position, map, false)); GenSpawn.Spawn(ThingDef.Named("Ind_MiningHole"), position, map); Messages.Message("Ind_SkyDriller_Completed".Translate(), MessageSound.Standard); }
public override void ProcessInput(Event ev) { base.ProcessInput(ev); SoundStarter.PlayOneShotOnCamera(SoundDefOf.Tick_Tiny, null); Texture2D texture2D = ContentFinder <Texture2D> .Get("UI/Leap", true); Find.Targeter.BeginTargeting(ForLeapDestination(), delegate(LocalTargetInfo target) { this.action(target.Cell); }, this.pawn, null, texture2D); }
// Token: 0x0600000C RID: 12 RVA: 0x0000231C File Offset: 0x0000051C public override void ProcessInput(Event ev) { base.ProcessInput(ev); SoundStarter.PlayOneShotOnCamera(SoundDefOf.Tick_Tiny, null); Texture2D JPIcon = ContentFinder <Texture2D> .Get(Command_JetPack.JPIconPath, true); Find.Targeter.BeginTargeting(Command_JetPack.targParms, delegate(LocalTargetInfo target) { this.action(target.Cell); }, this.Pilot, null, JPIcon); }
public override void CompTick() { base.CompTick(); // if(pb==null) this.pb = base.parent as Building_SuperWeapon; this.ticktime = pb.ticks; this.canFire = pb.canFire; if (this.ticktime == 34910) { SoundStarter.PlayOneShot(SoundDef.Named("ra2_StormRead"), this.parent); } }
// Token: 0x0600004A RID: 74 RVA: 0x0000417C File Offset: 0x0000237C public override void Tick() { this.innerContainer.ThingOwnerTick(true); this.ticksToImpact--; this.ticksToHeadAche++; Vector3 drawLoc = base.DrawPos; if (this.ticksToImpact % 3 == 0) { int numMotes = Math.Min(2, this.def.skyfaller.motesPerCell); for (int i = 0; i < numMotes; i++) { MoteMaker.ThrowSmoke(drawLoc, base.Map, 2f); } } if (this.ticksToImpact % 25 == 0 && this.JumpSound != null) { IntVec3 SoundPos = IntVec3Utility.ToIntVec3(drawLoc); SoundStarter.PlayOneShot(this.JumpSound, new TargetInfo(SoundPos, base.Map, false)); } if (this.ticksToHeadAche == 3 && Settings.AllowFire) { this.JPIgnite(IntVec3Utility.ToIntVec3(drawLoc), base.Map); } if (this.ticksToHeadAche == 10) { this.JPHitRoof(true); } if (this.ticksToImpact == 15) { this.JPHitRoof(false); } if (!this.anticipationSoundPlayed && this.def.skyfaller.anticipationSound != null && this.ticksToImpact < this.def.skyfaller.anticipationSoundTicks) { this.anticipationSoundPlayed = true; SoundStarter.PlayOneShot(this.def.skyfaller.anticipationSound, new TargetInfo(base.Position, base.Map, false)); } if (this.ticksToImpact == 3) { this.EjectPilot(); } if (this.ticksToImpact == 0) { this.JPImpact(); return; } if (this.ticksToImpact < 0) { Log.Error("ticksToImpact < 0. Was there an exception? Destroying skyfaller.", false); this.EjectPilot(); this.Destroy(0); } }
public void CollectTithes() { List <Building> list = Tithes.TitheUtilities.allTitheContainers; for (int i = 0; i < list.Count; i++) { list[i].Destroy(DestroyMode.Vanish); } SoundStarter.PlayOneShotOnCamera(SoundDefOf.Thunder_OnMap); Tithes.TitheUtilities.CalculateColonyTithes(this); }
// Token: 0x060000FD RID: 253 RVA: 0x00009624 File Offset: 0x00007824 protected void ImpactSomething() { bool flyOverhead = this.def.projectile.flyOverhead; if (flyOverhead) { RoofDef roofDef = base.Map.roofGrid.RoofAt(base.destinationInt.ToIntVec3()); bool flag = roofDef != null && roofDef.isThickRoof; if (flag) { SoundInfo soundInfo = SoundInfo.InMap(new TargetInfo(base.destinationInt.ToIntVec3(), base.Map, false), 0); SoundStarter.PlayOneShot(this.def.projectile.soundHitThickRoof, soundInfo); return; } } bool flag2 = this.intendedTarget != null; if (flag2) { Pawn pawn = this.intendedTarget as Pawn; bool flag3 = pawn != null && pawn.Downed && (this.origin - this.Destination).magnitude > 5f && Rand.Value < 0.2f; if (flag3) { this.Impact(null); } else { this.Impact(this.intendedTarget); } } else { Thing thing = base.Map.thingGrid.ThingAt(base.destinationInt.ToIntVec3(), (ThingCategory)1); bool flag4 = thing != null; if (flag4) { this.Impact(thing); } else { foreach (Thing thing2 in base.Map.thingGrid.ThingsAt(base.destinationInt.ToIntVec3())) { bool flag5 = thing2.def.fillPercent > 0f || thing2.def.passability > 0; if (flag5) { this.Impact(thing2); return; } } this.Impact(null); } } }
// Token: 0x04000B62 RID: 2914 // public Building Barracks; private void canTrain(CompRefuelable cr, String def, float amount) { if (cr != null && cr.Fuel >= amount) { SoundStarter.PlayOneShotOnCamera(DefDatabase <SoundDef> .GetNamed(this.parent.def.defName + "_Training", true)); this.trainPawns.Add(def); cr.ConsumeFuel(amount); } else { SoundStarter.PlayOneShotOnCamera(DefDatabase <SoundDef> .GetNamed("ra2_Click", true)); } }
// Token: 0x06000022 RID: 34 RVA: 0x00002834 File Offset: 0x00000A34 protected override void SpringSub(Pawn p) { SoundStarter.PlayOneShot(SoundDefOf.TrapSpring, new TargetInfo(base.Position, base.Map, false)); this.armedInt = false; if (p != null) { this.DamagePawn(p); } if (this.autoRearm && this.canBeDesignatedRearm()) { base.Map.designationManager.AddDesignation(new Designation(this, YautjaDefOf.RRY_RearmTrap)); } }
private void TryLaunchProjectile(ThingDef projectileDef, LocalTargetInfo launchTarget) { Vector3 drawPos = this.ExactPosition; Projectile_AbilityBase projectile_AbilityBase = (Projectile_AbilityBase)GenSpawn.Spawn(projectileDef, this.ExactPosition.ToIntVec3(), this.Map); //ShotReport shotReport = ShotReport.HitReportFor(this.pawn, this.verb, launchTarget); SoundDef expr_C8 = TorannMagicDefOf.TM_AirWoosh; if (expr_C8 != null) { SoundStarter.PlayOneShot(expr_C8, new TargetInfo(this.ExactPosition.ToIntVec3(), this.Map, false)); } projectile_AbilityBase.Launch(this.pawn, TorannMagicDefOf.TM_PsionicBlast, drawPos, launchTarget, ProjectileHitFlags.All, null, null, null, null); }
internal static void EmptyObject(IEnumerable <CompUniversalFermenter> comps) { foreach (CompUniversalFermenter comp in comps) { if (comp.Finished) { Thing product = comp.TakeOutProduct(); GenPlace.TryPlaceThing(product, comp.parent.Position, comp.parent.Map, ThingPlaceMode.Near); } } gooseAngle = Rand.Range(0, 360); SoundStarter.PlayOneShotOnCamera(UF_DefOf.UF_Honk); }