Esempio n. 1
0
        private static void InternalToggle()
        {
            if (DebugToolkit.UpdateCurrentPlayerBody(out _currentNetworkUser, out _currentBody))
            {
                if (IsActivated)
                {
                    if (_collidableLayersCached != 0)
                    {
                        _currentBody.GetComponent <KinematicCharacterMotor>().CollidableLayers = _collidableLayersCached;
                    }
                    _currentBody.characterMotor.useGravity = true;
                    UndoHooks();
                }
                else
                {
                    _collidableLayersCached = _currentBody.GetComponent <KinematicCharacterMotor>().CollidableLayers;
                    _currentBody.GetComponent <KinematicCharacterMotor>().CollidableLayers = 0;
                    _currentBody.characterMotor.useGravity = false;
                    ApplyHooks();
                }

                IsActivated = !IsActivated;
                Log.Message(string.Format(Lang.NOCLIP_TOGGLE, IsActivated));
            }
        }
Esempio n. 2
0
 internal static void Update()
 {
     if (DebugToolkit.UpdateCurrentPlayerBody(out _currentNetworkUser, out _currentBody))
     {
         Loop();
     }
 }
Esempio n. 3
0
        private static void InternalActivation()
        {
            if (DebugToolkit.UpdateCurrentPlayerBody(out _, out _currentBody))
            {
                var playerTransform = _currentBody.GetComponentInChildren <KinematicCharacterMotor>().transform;
                var aimDirection    = _currentBody.GetComponentInChildren <InputBankTest>().aimDirection;

                if (Physics.Raycast(playerTransform.position, aimDirection, out var hit, Mathf.Infinity, 1 << 11))
                {
                    _currentBody.GetComponentInChildren <KinematicCharacterMotor>().SetPosition(hit.point + new Vector3(0, 5));
                }
            }
        }
Esempio n. 4
0
        internal static void CombatDirector_SetNextSpawnAsBoss(On.RoR2.CombatDirector.orig_SetNextSpawnAsBoss orig, CombatDirector self)
        {
            orig(self);
            self.monsterCredit *= 100;
            var selected = DebugToolkit.nextBoss;

            //todo: fix this line.
            // selected.cost = (int)((self.monsterCredit / DebugToolkit.nextBossCount) / DebugToolkit.GetTierDef(DebugToolkit.nextBossElite).costMultiplier);
            self.OverrideCurrentMonsterCard(selected);
            self.SetFieldValue <CombatDirector.EliteTierDef>("currentActiveEliteTier", DebugToolkit.GetTierDef(DebugToolkit.nextBossElite));
            self.SetFieldValue <EliteIndex>("currentActiveEliteIndex", DebugToolkit.nextBossElite);
            Log.Message($"{selected.spawnCard.name} cost has been set to {selected.cost} for {DebugToolkit.nextBossCount} {DebugToolkit.nextBossElite.ToString()} bosses with available credit: {self.monsterCredit}", Log.LogLevel.Info);
            DebugToolkit.nextBossCount = 1;
            DebugToolkit.nextBossElite = EliteIndex.None;
            On.RoR2.CombatDirector.SetNextSpawnAsBoss -= CombatDirector_SetNextSpawnAsBoss;
        }