Ejemplo n.º 1
0
        private void SpawnWorkbench()
        {
            _workbench = GameManager.server.CreateEntity("assets/prefabs/deployable/tier 3 workbench/workbench3.deployed.prefab", new Vector3(0, -50, 0)) as Workbench;
            _workbench.enableSaving = false;
            _workbench.Spawn();

            _workbench.GetComponent <DestroyOnGroundMissing>().enabled = false;
            _workbench.GetComponent <GroundWatch>().enabled            = false;

            _workbenchTrigger = _workbench.GetComponentInChildren <TriggerWorkbench>();

            foreach (var player in BasePlayer.activePlayerList)
            {
                OnPlayerInit(player);
            }

            _workbenchTrigger.name = "workbench";

            timer.In(1, () =>
            {
                if (_workbench == null || _workbench.IsDestroyed)
                {
                    SpawnWorkbench();
                }
            });
        }
 private void OnEntityLeave(TriggerWorkbench triggerWorkbench, BasePlayer player)
 {
     InWorkbenchRadius.Remove(player.userID);
     if ((bool)Config["ShowMessages"] == true)
     {
         player.IPlayer.Reply(lang.GetMessage("canceled", this, player.IPlayer.Id));
     }
     player.inventory.crafting.CancelAll(true);
 }
        private void OnEntityEnter(TriggerWorkbench triggerWorkbench, BasePlayer player)
        {
            InWorkbenchRadius.Add(player.userID);

            if ((bool)Config["ShowMessages"] == true)
            {
                player.IPlayer.Reply(lang.GetMessage("inofrange", this, player.IPlayer.Id));
            }
        }