示例#1
0
 public void OnReload(PlayerReloadEvent ev)
 {
     if (GamemodeManager.GamemodeManager.GetCurrentMode().Equals(plugin) && ev.Player.TeamRole.Role == Role.CLASSD && NE_Config.NE_InfiniteAmmo)
     {
         ev.AmmoRemoved = 0;
     }
 }
示例#2
0
 public void OnReload(PlayerReloadEvent ev)
 {
     send(ev, new IdMapping()
          .appendId(Lib.PLAYER_ID, ev.Player)
          .appendId(Lib.PLAYER_EVENT_SCPDATA_ID, ev.Player.Scp079Data)
          .appendId(Lib.PLAYER_EVENT_TEAM_ROLE_ID, ev.Player.TeamRole)
          );
 }
示例#3
0
        internal void InvokePlayerReloadEvent(Player player, ref bool allow, Items.SynapseItem syncItemInfo)
        {
            var ev = new PlayerReloadEventArgs {
                Allow = allow, Item = syncItemInfo, Player = player
            };

            PlayerReloadEvent?.Invoke(ev);

            allow = ev.Allow;
        }
示例#4
0
        internal static void InvokePlayerReloadEvent(Player player, ref bool allow, Inventory.SyncItemInfo syncItem)
        {
            if (PlayerReloadEvent == null)
            {
                return;
            }

            var ev = new PlayerReloadEvent
            {
                Player        = player,
                Allow         = allow,
                InventorySlot = syncItem
            };

            PlayerReloadEvent.Invoke(ev);

            allow = ev.Allow;
        }
示例#5
0
        internal void ReloadItem(ref PlayerReloadEvent ev)
        {
            if (!PluginMain.ammo.ContainsKey(ev.Player))
            {
                PluginMain.ammo.Add(ev.Player, new Ammo(ev.Player));
            }
            var id = ev.Player.GetCurrentItem();

            if (PluginMain.ammo[ev.Player].Get() > 0)
            {
                ev.Allow = true;
                int dur = (int)Pickup.Inv.GetItemByID(ev.Player.inventory.curItem).durability;
                PluginMain.ammo[ev.Player].Add(-dur);
                if (PluginMain.ammo[ev.Player].Get() <= 0)
                {
                    PluginMain.ammo[ev.Player].Set(0);
                }
                int newammo = (int)id.durability + dur + PluginMain.ammo[ev.Player].Get();
                if (newammo > MaxAmmo(ev.Player))
                {
                    PluginMain.ammo[ev.Player].Set(-(MaxAmmo(ev.Player) - newammo));
                    newammo = MaxAmmo(ev.Player);
                }
                ev.Player.SetWeaponAmmo(id, newammo);
                ev.Player.SetAmmo(AmmoType.Dropped5, 1);
                ev.Player.SetAmmo(AmmoType.Dropped7, 1);
                ev.Player.SetAmmo(AmmoType.Dropped9, 1);
            }
            else
            {
                ev.Allow = false;
                ev.Player.SetAmmo(AmmoType.Dropped5, 1);
                ev.Player.SetAmmo(AmmoType.Dropped7, 1);
                ev.Player.SetAmmo(AmmoType.Dropped9, 1);
            }
        }