Exemplo n.º 1
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
 {
     if ((ev.Player.TeamRole.Role == Role.FACILITY_GUARD) && (Guardias[ev.Player.SteamId] >= 300) && (ev.GrenadeType == GrenadeType.FRAG_GRENADE))
     {
         ev.Player.GiveItem(ItemType.FRAG_GRENADE);
     }
 }
Exemplo n.º 2
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
 {
     //La pasiva de los cadetes de que cuando lanzan granadas flash o granadas ganan salud y con las frag ganan una flash
     if ((ev.Player.TeamRole.Role == Role.NTF_CADET) && (ev.GrenadeType == GrenadeType.FRAG_GRENADE))
     {
         ev.Player.AddHealth(20);
         ev.Player.GiveItem(ItemType.FLASHBANG);
     }
     if ((ev.Player.TeamRole.Role == Role.NTF_CADET) && (ev.GrenadeType == GrenadeType.FLASHBANG))
     {
         ev.Player.AddHealth(30);
     }
     if (ev.Player.TeamRole.Role == Role.NTF_LIEUTENANT)
     {
         if (NTFlic4.ContainsKey(ev.Player.SteamId))
         {
             if (NTFlic4[ev.Player.SteamId] == true)
             {
                 GrenadeManager grenadeManager = ((GameObject)ev.Player.GetGameObject()).GetComponent <GrenadeManager>();
                 foreach (GrenadeSettings grenade in grenadeManager.availableGrenades)
                 {
                     grenade.timeUnitilDetonation = 120f;
                 }
             }
             else
             {
                 GrenadeManager grenadeManager = ((GameObject)ev.Player.GetGameObject()).GetComponent <GrenadeManager>();
                 foreach (GrenadeSettings grenade in grenadeManager.availableGrenades)
                 {
                     grenade.timeUnitilDetonation = 6f;
                 }
             }
         }
     }
 }
Exemplo n.º 3
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
 {
     /// <summary>
     /// Called after a player throws a grenade
     /// <summary>
     plugin.SendMessageAsync(plugin.GetConfigString("discord_channel_onthrowgrenade"), ev.Player.Name + " (" + ev.Player.SteamId + plugin.MultiLanguage(42));
 }
Exemplo n.º 4
0
        public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
        {
            if (!CheckSteamIDItemNum.ContainsKey(ev.Player.SteamId))
            {
                CheckSteamIDItemNum[ev.Player.SteamId] = new UserStackData();
            }

            int GrenadeTypeToUse = -1;

            if (ev.GrenadeType == GrenadeType.FLASHBANG)
            {
                GrenadeTypeToUse = (int)ItemType.FLASHBANG;
            }
            else if (ev.GrenadeType == GrenadeType.FRAG_GRENADE)
            {
                GrenadeTypeToUse = (int)ItemType.FRAG_GRENADE;
            }

            if (GrenadeTypeToUse == -1)
            {
                return;
            }

            if (CheckSteamIDItemNum[ev.Player.SteamId].GetItemAmount(GrenadeTypeToUse) >= 1)
            {
                CheckSteamIDItemNum[ev.Player.SteamId].AddItemAmount(GrenadeTypeToUse, -1);
                if (CheckSteamIDItemNum[ev.Player.SteamId].GetItemAmount(GrenadeTypeToUse) % stackManager.GetStackSize(GrenadeTypeToUse) != 0)
                {
                    CheckSteamIDItemNum[ev.Player.SteamId].fixUse = true;
                    ev.Player.GiveItem((ItemType)GrenadeTypeToUse);
                    CheckSteamIDItemNum[ev.Player.SteamId].fixUse = false;                     //Looks ugly but is needed so it doesn't add one to my stacking system.
                }
            }
        }
Exemplo n.º 5
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent 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)
          );
 }
Exemplo n.º 6
0
        internal void InvokeThrowGrenade(Player player, SynapseItem grenade, out bool allow)
        {
            var ev = new PlayerThrowGrenadeEventArgs
            {
                Allow  = true,
                Item   = grenade,
                Player = player
            };

            PlayerThrowGrenadeEvent?.Invoke(ev);

            allow = ev.Allow;
        }
Exemplo n.º 7
0
        public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
        {
            /// <summary>
            /// Called after a player throws a grenade
            /// <summary>
            Dictionary <string, string> variables = new Dictionary <string, string>
            {
                { "type", ev.GrenadeType.ToString() },
                { "ipaddress", ev.Player.IpAddress },
                { "name", ev.Player.Name },
                { "playerid", ev.Player.PlayerId.ToString() },
                { "steamid", ev.Player.SteamId },
                { "class", ev.Player.TeamRole.Role.ToString() },
                { "team", ev.Player.TeamRole.Team.ToString() }
            };

            plugin.SendMessage(Config.GetArray("channels.onthrowgrenade"), "player.onthrowgrenade", variables);
        }
Exemplo n.º 8
0
        internal void InvokePlayerThrowGrenadeEvent(Player player, SynapseItem item, ref GrenadeSettings settings, ref float force, ref float delay, ref bool allow)
        {
            var ev = new PlayerThrowGrenadeEventArgs
            {
                Player          = player,
                Item            = item,
                ForceMultiplier = force,
                Delay           = delay,
                Allow           = allow,
                Settings        = settings,
            };

            PlayerThrowGrenadeEvent?.Invoke(ev);

            force = ev.ForceMultiplier;
            delay = ev.Delay;
            allow = ev.Allow;
        }
Exemplo n.º 9
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
 {
     grandapos = ev.Direction;
     if (Jugadoresh[ev.Player.SteamId] >= 5)
     {
         Timing.Run(GranadaP1(ev.Player, grandapos));
     }
     if (ev.GrenadeType == ItemType.FRAG_GRENADE)
     {
         Timing.Run(Granada(ev.Player));
     }
     if (ev.GrenadeType == ItemType.FLASHBANG)
     {
         Timing.Run(GranadaC(ev.Player));
     }
     if ((Jugadoresh[ev.Player.SteamId] >= 7) && (!ev.Player.HasItem(ItemType.CUP)))
     {
         Timing.Run(Multishot(ev.Player, grandapos));
     }
 }
Exemplo n.º 10
0
        internal static void InvokePlayerThrowGrenadeEvent(Player player, ItemType type, ref bool slow, ref double time, out bool allow)
        {
            allow = true;

            if (PlayerThrowGrenadeEvent == null)
            {
                return;
            }

            var ev = new PlayerThrowGrenadeEvent
            {
                Player   = player,
                Grenade  = type,
                Slow     = slow,
                FuseTime = time,
                Allow    = allow
            };

            PlayerThrowGrenadeEvent.Invoke(ev);

            allow = ev.Allow;
            slow  = ev.Slow;
            time  = ev.FuseTime;
        }
Exemplo n.º 11
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
 {
     plugin.luaHookCall.Function.Call("OnThrowGrenade", ev.Player, ev.GrenadeType, ev.SlowThrow, ev.Direction);
 }
Exemplo n.º 12
0
 public void OnThrowGrenade(PlayerThrowGrenadeEvent ev)
 => DiscordLab.bot.NewMessage($"{ev.Player.nameClean} threw {ev.Grenade}");