本文整理汇总了C#中BasePlayer.GetActiveItem方法的典型用法代码示例。如果您正苦于以下问题:C# BasePlayer.GetActiveItem方法的具体用法?C# BasePlayer.GetActiveItem怎么用?C# BasePlayer.GetActiveItem使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BasePlayer
的用法示例。
在下文中一共展示了BasePlayer.GetActiveItem方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnPlayerInput
//Oxide Hook
void OnPlayerInput(BasePlayer player, InputState input)
{
if (this.allowAdminRotate && player.IsAdmin() && player.GetActiveItem() != null && player.GetActiveItem().info.shortname.Equals("hammer"))
{
if (input.WasJustPressed(BUTTON.FIRE_PRIMARY))
{
RaycastHit hit;
if (Physics.Raycast(player.eyes.position, (player.eyes.rotation * Vector3.forward), out hit, 2f, Layers.Server.Buildings))
{
BaseEntity baseEntity = hit.collider.gameObject.ToBaseEntity();
if (baseEntity != null)
{
BuildingBlock block = baseEntity.GetComponent<BuildingBlock>();
if (block != null && block.blockDefinition.canRotate && !this.instanceIDs.Contains(block.GetInstanceID()))
{
block.SetFlag(BaseEntity.Flags.Reserved1, true);
addBlockToLists(block.GetInstanceID(), DateTime.Now.AddMinutes(-this.amountOfMinutesAfterUpgrade).ToString());
int remainingSeconds = timerInterval - DateTime.Now.Subtract(lastTimerTick).Seconds;
SendReply(player, "<color=green>You can now rotate this " + block.blockDefinition.info.name.english + " for " + remainingSeconds + " seconds.</color>");
}
}
}
}
}
}
示例2: OnRocketLaunched
private void OnRocketLaunched(BasePlayer player)
{
var weapon = player.GetActiveItem().GetHeldEntity() as BaseProjectile;
if (weapon == null) return;
player.GetActiveItem().condition = player.GetActiveItem().info.condition.max;
weapon.SendNetworkUpdateImmediate();
if (storedData.playerClass[player.userID] == "rocketman")
{
weapon.primaryMagazine.contents = weapon.primaryMagazine.capacity;
weapon.SendNetworkUpdateImmediate();
}
}