Esempio n. 1
0
            public static void Postfix(PlayerMovementSync __instance)
            {
                try
                {
                    if (Pets.TryGetValue(__instance._hub, out var pets))
                    {
                        var position = __instance.RealModelPosition;

                        Timing.CallDelayed(0.25f, () =>
                        {
                            foreach (var pet in pets)
                            {
                                var rotation = Quaternion.LookRotation(__instance.RealModelPosition - pet.playerMovementSync._realModelPosition);
                                pet.playerMovementSync.Rotations = new Vector2(rotation.eulerAngles.x, rotation.eulerAngles.y);

                                if (Vector3.Distance(position, __instance.RealModelPosition) <= 0.5)
                                {
                                    continue;
                                }

                                pet.playerMovementSync._realModelPosition = position;
                            }
                        });
                    }
                }
                catch (Exception e)
                {
                    Logger.Error(e);
                }
            }
        public static void Spawn(ReferenceHub player)
        {
            if (player.isDedicatedServer)
            {
                return;
            }

            Logger.Info($"Spawning {player.nicknameSync.MyNick}");

            player.characterClassManager.SetPlayersClass(Instance.Configuration.Role, player.gameObject);
            player.playerMovementSync.OverridePosition(Instance.Configuration.Position);

            if (Instance.Configuration.GiveItems)
            {
                player.inventory.AddNewItem(ItemType.GunUSP);
                player.ammoBox[(int)AmmoType._9] = 100;
                player.inventory.AddNewItem(ItemType.GunE11SR);
                player.ammoBox[(int)AmmoType._762] = 100;
                player.inventory.AddNewItem(ItemType.GunLogicer);
                player.ammoBox[(int)AmmoType._556] = 100;
            }
        }