/// <summary> /// Called by a player entity when they collide with an entity /// </summary> public override void OnCollideWithPlayer(EntityPlayer par1EntityPlayer) { if (WorldObj.IsRemote) { return; } if (InGround && DoesArrowBelongToPlayer && ArrowShake <= 0 && par1EntityPlayer.Inventory.AddItemStackToInventory(new ItemStack(Item.Arrow, 1))) { WorldObj.PlaySoundAtEntity(this, "random.pop", 0.2F, ((Rand.NextFloat() - Rand.NextFloat()) * 0.7F + 1.0F) * 2.0F); par1EntityPlayer.OnItemPickup(this, 1); SetDead(); } }
/// <summary> /// Called by a player entity when they collide with an entity /// </summary> public override void OnCollideWithPlayer(EntityPlayer par1EntityPlayer) { if (WorldObj.IsRemote) { return; } if (Field_35126_c == 0 && par1EntityPlayer.XpCooldown == 0) { par1EntityPlayer.XpCooldown = 2; WorldObj.PlaySoundAtEntity(this, "random.orb", 0.1F, 0.5F * ((Rand.NextFloat() - Rand.NextFloat()) * 0.7F + 1.8F)); par1EntityPlayer.OnItemPickup(this, 1); par1EntityPlayer.AddExperience(XpValue); SetDead(); } }
/// <summary> /// Called by a player entity when they collide with an entity /// </summary> public override void OnCollideWithPlayer(EntityPlayer par1EntityPlayer) { if (WorldObj.IsRemote) { return; } int i = ItemStack.StackSize; if (DelayBeforeCanPickup == 0 && par1EntityPlayer.Inventory.AddItemStackToInventory(ItemStack)) { if (ItemStack.ItemID == Block.Wood.BlockID) { par1EntityPlayer.TriggerAchievement(AchievementList.MineWood); } if (ItemStack.ItemID == Item.Leather.ShiftedIndex) { par1EntityPlayer.TriggerAchievement(AchievementList.KillCow); } if (ItemStack.ItemID == Item.Diamond.ShiftedIndex) { par1EntityPlayer.TriggerAchievement(AchievementList.Diamonds); } if (ItemStack.ItemID == Item.BlazeRod.ShiftedIndex) { par1EntityPlayer.TriggerAchievement(AchievementList.BlazeRod); } WorldObj.PlaySoundAtEntity(this, "random.pop", 0.2F, ((Rand.NextFloat() - Rand.NextFloat()) * 0.7F + 1.0F) * 2.0F); par1EntityPlayer.OnItemPickup(this, i); if (ItemStack.StackSize <= 0) { SetDead(); } } }