Example #1
0
            public void SpawnVisual(BasePlayer player)
            {
                if (_visualEntity != null || !Configuration.ShowOnBack)
                {
                    return;
                }

                BaseEntity           entity    = GameManager.server.CreateEntity(BackpackPrefab, new Vector3(0, -0.1f, 0), Quaternion.Euler(-5, -90, 180));
                DroppedItemContainer container = entity as DroppedItemContainer;

                container.inventory = new ItemContainer();
                container.inventory.ServerInitialize(null, 0);
                container.inventory.GiveUID();
                container.inventory.entityOwner = container;
                container.inventory.SetFlag(ItemContainer.Flag.NoItemInput, true);
                container.CancelInvoke(container.RemoveMe);

                var visualBackpack = entity.gameObject.AddComponent <VisualBackpack>();

                visualBackpack.Backpack = this;

                entity.limitNetworking = true;

                entity.SetParent(player, StringPool.Get(BackBone));
                entity.SetFlag(BaseEntity.Flags.Locked, true);
                entity.Spawn();
                entity.name = "backpack";

                _visualEntity = entity;
            }