public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { plugin.Info(ev.Player.Name + " picked up item " + ev.Item.ItemType); //Checks the itemtype of the picked up item if (ev.Item.ItemType == Smod2.API.ItemType.COIN) { double luckyValue = random.NextDouble(); // Chance of instantly dying if (luckyValue < plugin.killChance) { ev.Player.Kill(); } else { // An array lets other plugins set the values of it in events. Smod2.API.ItemType[] itemPtr = { Smod2.API.ItemType.MICROHID }; plugin.InvokeEvent("courtney.example.plugin", itemPtr); // Get the singular item from the array since indexing it every time is annoying. Smod2.API.ItemType item = itemPtr[0]; // lottoItemCount is automatically read and converted to an int. This gives the item lottoItemCount times to the player. int count = plugin.lottoItemCount; plugin.Info($"{nameof(plugin.lottoItemCount)} is {count}"); for (int i = 0; i < count; i++) { ev.Player.GiveItem(item); } } } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { /// <summary> /// This is called when a player picks up an item. /// </summary> plugin.SendMessageAsync(plugin.GetConfigString("discord_channel_onplayerpickupitem"), ev.Player.Name + " (" + ev.Player.SteamId + plugin.MultiLanguage(27) + ev.Item + "."); }
/// <summary> /// Does handling to see if 343 should either convert to flashlight (Or different item depends on config) or drop the item. /// </summary> public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { //plugin.Info((int)ev.Item.ItemType + ":" + ev.Item.ItemType.ToString().Length + ":" + ((int)ev.Item.ItemType).ToString().Length); if (Is343(ev.Player)) { if (_343Config.SCP343_convertitems) { if (_343Config.ItemConvertList.Contains((int)ev.Item.ItemType)) { ev.ChangeTo = (Smod2.API.ItemType)_343Config.ConvertedItemList[RNG.Next(_343Config.ConvertedItemList.Length - 1)]; } if (_343Config.ItemBlackList.Contains((int)ev.Item.ItemType)) { ev.Item.Drop(); //Idk how to not have it picked up ev.Allow = false; // This deletes the item :( } } else if (_343Config.SCP343_convertitems == false && PluginManager.Manager.Server.Round.Duration >= 3) { if (_343Config.ItemBlackList.Contains((int)ev.Item.ItemType) || _343Config.ItemConvertList.Contains((int)ev.Item.ItemType)) { ev.Item.Drop(); //Idk how to not have it picked up ev.Allow = false; // This deletes the item :( } } } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { if (!allowPickup && ev.Player.TeamRole.Role == Role.TUTORIAL) { ev.Allow = false; plugin.pluginManager.Server.Map.SpawnItem(ev.Item.ItemType, ev.Player.GetPosition(), Vector.Zero); } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { //no permite al SCP-939-53 tomar objetos if (Habilidad.ContainsKey(ev.Player.SteamId)) { ev.Allow = false; } }
void IEventHandlerPlayerPickupItem.OnPlayerPickupItem(PlayerPickupItemEvent 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) .appendId(Lib.ITEM_EVENT_ID, ev.Item) ); }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { if (this.isPluginDisabledThisRound) { return; } ev.Allow = this.isActualRoundStarted; }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { if (ev.Item.ItemType == ItemType.SCP268) { ev.Item.Remove(); } else { ev.Item.Drop(); } }
private static void Searching_CallCmdPickupItem(On.Searching.orig_CallCmdPickupItem orig, Searching self, UnityEngine.GameObject t) { var evnt = new PlayerPickupItemEvent(new LabPlayer(self.gameObject), new LabItem(t), (Smod2.API.ItemType)t.GetComponent <Pickup>().ItemId, true); EventManager.Manager.HandleEvent <IEventHandlerPlayerPickupItem>(evnt); if (evnt.Allow) { t.GetComponent <Pickup>().info.itemId = (ItemType)evnt.ChangeTo; orig(self, t); var evnt2 = new PlayerPickupItemLateEvent(new LabPlayer(self.gameObject), new LabItem(t)); EventManager.Manager.HandleEvent <IEventHandlerPlayerPickupItemLate>(evnt2); } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { if (ev.Item.ItemType == ItemType.COIN) { ev.Item.Remove(); } if ((ev.Item.ItemType == ItemType.FRAG_GRENADE) && (ev.Item.InWorld == true)) { ev.Allow = false; } if ((ev.Item.ItemType == ItemType.COM15) || (ev.Item.ItemType == ItemType.USP) || (ev.Item.ItemType == ItemType.P90) || (ev.Item.ItemType == ItemType.LOGICER) || (ev.Item.ItemType == ItemType.E11_STANDARD_RIFLE) || (ev.Item.ItemType == ItemType.MP4)) { ev.ChangeTo = ItemType.FRAG_GRENADE; } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { plugin.Info(ev.Player.Name + " picked up item " + ev.Item.ItemType); if (ev.Item.ItemType == ItemType.COIN) { double luckyValue = rnd.NextDouble(); if (luckyValue > 0.8) { ev.Player.Kill(); } if (luckyValue < 0.1) { ev.ChangeTo = ItemType.MICROHID; } } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { /// <summary> /// This is called when a player picks up an item. /// </summary> Dictionary <string, string> variables = new Dictionary <string, string> { { "item", ev.Item.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.onplayerpickupitem"), "player.onplayerpickupitem", variables); }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { plugin.Info(ev.Player.Name + " picked up item " + ev.Item.ItemType); //Checks the itemtype of the picked up item if (ev.Item.ItemType == ItemType.COIN) { double luckyValue = random.NextDouble(); if (luckyValue > 0.8) { //20% chance of instantly dying ev.Player.Kill(); } if (luckyValue < 0.1) { //10% chance of getting a MicroHID ev.ChangeTo = ItemType.MICROHID; } } }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { plugin.luaHookCall.Function.Call("OnPlayerPickupItem", ev.Player, ev.Item, ev.Allow, ev.ChangeTo); }
public void OnPlayerPickupItem(PlayerPickupItemEvent ev) { ev.Item.Drop(); }