コード例 #1
0
        protected override void Impact(Thing hitThing)
        {
            base.Impact(hitThing);

            /*
             * Null checking is very important in RimWorld.
             * 99% of errors reported are from NullReferenceExceptions (NREs).
             * Make sure your code checks if things actually exist, before they
             * try to use the code that belongs to said things.
             */
            if (Def != null && hitThing != null && hitThing is Pawn hitPawn) //Fancy way to declare a variable inside an if statement. - Thanks Erdelf.
            {

            }
            SoundDefOf.PlanetkillerImpact.PlayOneShotOnCamera();
            ScreenFader.StartFade(FadeColor, 1f);
            ScreenFader.SetColor(Color.clear);
            GenGameEnd.EndGameDialogMessage("GameOverPlanetkillerImpact".Translate(Find.World.info.name), allowKeepPlaying: false, screenFillColor: Color.white);


        }
コード例 #2
0
        // Token: 0x06003D56 RID: 15702 RVA: 0x00143E05 File Offset: 0x00142005
        private void Impact()
        {
            ScreenFader.SetColor(Color.clear);

            GenGameEnd.EndGameDialogMessage("GameOverPlanetkillerImpact".Translate(Find.World.info.name), false, GameCondition_BetaHiveEvolution.FadeColor);
        }