示例#1
0
        private void Drop(Synapse.Api.Events.SynapseEventArguments.PlayerDropItemEventArgs ev)
        {
            if (Vector3.Distance(ev.Player.Position, scp1162Position) <= PluginClass.Config.Size)
            {
                if (PluginClass.Config.PossibleItems == null || PluginClass.Config.PossibleItems.Count == 0)
                {
                    return;
                }
                ev.Allow = false;
                ev.Item.Destroy();
                ev.Player.GiveTextHint(PluginClass.Config.Message);

                var serializeditem = PluginClass.Config.PossibleItems.ElementAt(UnityEngine.Random.Range(0, PluginClass.Config.PossibleItems.Count));
                if (serializeditem.ID == -1)
                {
                    new Synapse.Api.Ragdoll(RoleType.Scp0492, "SCP-1162", ev.Player.Position, ev.Player.transform.rotation, DamageType.Unknown);
                    return;
                }

                var item = serializeditem.Parse();
                if (PluginClass.Config.Drop)
                {
                    item.Drop(ev.Player.Position);
                }
                else
                {
                    item.PickUp(ev.Player);
                }
            }
        }
示例#2
0
 private void Player_PlayerDropItemEvent(Synapse.Api.Events.SynapseEventArguments.PlayerDropItemEventArgs ev)
 {
     if (ev.Player.RoleID == 343)
     {
         ev.Allow = false;
     }
 }
示例#3
0
        private void OnDrop(Synapse.Api.Events.SynapseEventArguments.PlayerDropItemEventArgs ev)
        {
            if (!ev.Player.GetComponent <TranquilizerPlayerScript>().Stuned)
            {
                return;
            }

            ev.Allow = false;
            ev.Player.GiveTextHint(PluginClass.GetTranslation("stuneddrop"));
        }