本文整理匯總了Java中net.minecraft.entity.player.EntityPlayerMP.addPotionEffect方法的典型用法代碼示例。如果您正苦於以下問題:Java EntityPlayerMP.addPotionEffect方法的具體用法?Java EntityPlayerMP.addPotionEffect怎麽用?Java EntityPlayerMP.addPotionEffect使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類net.minecraft.entity.player.EntityPlayerMP
的用法示例。
在下文中一共展示了EntityPlayerMP.addPotionEffect方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: finishRescue
import net.minecraft.entity.player.EntityPlayerMP; //導入方法依賴的package包/類
public static void finishRescue(EntityPlayer player) {
IHardcoreRevival revival = player.getCapability(CapabilityHardcoreRevival.REVIVAL_CAPABILITY, null);
if (revival != null) {
EntityPlayer target = revival.getRescueTarget();
if (target != null) {
MinecraftServer server = target.getServer();
if (server != null) {
BlockPos prevSpawnPos = target.getBedLocation(target.dimension);
boolean prevSpawnForced = target.isSpawnForced(target.dimension);
target.setSpawnPoint(target.getPosition(), true);
if (ModConfig.glowOnDeath) {
target.setGlowing(false);
}
EntityPlayerMP newPlayer = server.getPlayerList().recreatePlayerEntity((EntityPlayerMP) target, target.dimension, false);
((EntityPlayerMP) target).connection.player = newPlayer;
newPlayer.setHealth(1f);
newPlayer.getFoodStats().setFoodLevel(5);
newPlayer.addPotionEffect(new PotionEffect(MobEffects.HUNGER, 20 * 30));
newPlayer.addPotionEffect(new PotionEffect(MobEffects.WEAKNESS, 20 * 60));
newPlayer.inventory.copyInventory(target.inventory);
newPlayer.experienceLevel = target.experienceLevel;
newPlayer.experienceTotal = target.experienceTotal;
newPlayer.experience = target.experience;
newPlayer.extinguish();
newPlayer.setFlag(0, false); // burning flag
newPlayer.setScore(target.getScore());
newPlayer.setSpawnPoint(prevSpawnPos, prevSpawnForced);
NetworkHandler.instance.sendToAllAround(new MessageRevivalSuccess(newPlayer.getEntityId()), new NetworkRegistry.TargetPoint(newPlayer.dimension, newPlayer.posX, newPlayer.posY, newPlayer.posZ, 32));
}
}
}
}
示例2: updateAITasks
import net.minecraft.entity.player.EntityPlayerMP; //導入方法依賴的package包/類
protected void updateAITasks()
{
super.updateAITasks();
if (this.isElder())
{
int i = 1200;
int j = 1200;
int k = 6000;
int l = 2;
if ((this.ticksExisted + this.getEntityId()) % 1200 == 0)
{
Potion potion = Potion.digSlowdown;
for (EntityPlayerMP entityplayermp : this.worldObj.getPlayers(EntityPlayerMP.class, new Predicate<EntityPlayerMP>()
{
public boolean apply(EntityPlayerMP p_apply_1_)
{
return EntityGuardian.this.getDistanceSqToEntity(p_apply_1_) < 2500.0D && p_apply_1_.theItemInWorldManager.survivalOrAdventure();
}
}))
{
if (!entityplayermp.isPotionActive(potion) || entityplayermp.getActivePotionEffect(potion).getAmplifier() < 2 || entityplayermp.getActivePotionEffect(potion).getDuration() < 1200)
{
entityplayermp.playerNetServerHandler.sendPacket(new S2BPacketChangeGameState(10, 0.0F));
entityplayermp.addPotionEffect(new PotionEffect(potion.id, 6000, 2));
}
}
}
if (!this.hasHome())
{
this.setHomePosAndDistance(new BlockPos(this), 16);
}
}
}
示例3: handleDamageTaken
import net.minecraft.entity.player.EntityPlayerMP; //導入方法依賴的package包/類
@Override
public void handleDamageTaken(float damage, float healthPerMax, EntityPlayerMP player) {
if (!this.isEnabled.getAsBoolean())
return;
int value = -1;
for (Float2IntMap.Entry entry : map.float2IntEntrySet()) {
if (damage >= entry.getFloatKey()) {
value = Math.max(value, entry.getIntValue());
player.addPotionEffect(new PotionEffect(effect, entry.getIntValue(), 0, false, false));
}
}
if (value != -1 && sound != null)
FirstAid.NETWORKING.sendTo(new MessagePlayHurtSound(sound, value), player);
}
示例4: updateAITasks
import net.minecraft.entity.player.EntityPlayerMP; //導入方法依賴的package包/類
protected void updateAITasks()
{
super.updateAITasks();
int i = 1200;
if ((this.ticksExisted + this.getEntityId()) % 1200 == 0)
{
Potion potion = MobEffects.MINING_FATIGUE;
List<EntityPlayerMP> list = this.world.<EntityPlayerMP>getPlayers(EntityPlayerMP.class, new Predicate<EntityPlayerMP>()
{
public boolean apply(@Nullable EntityPlayerMP p_apply_1_)
{
return EntityElderGuardian.this.getDistanceSqToEntity(p_apply_1_) < 2500.0D && p_apply_1_.interactionManager.survivalOrAdventure();
}
});
int j = 2;
int k = 6000;
int l = 1200;
for (EntityPlayerMP entityplayermp : list)
{
if (!entityplayermp.isPotionActive(potion) || entityplayermp.getActivePotionEffect(potion).getAmplifier() < 2 || entityplayermp.getActivePotionEffect(potion).getDuration() < 1200)
{
entityplayermp.connection.sendPacket(new SPacketChangeGameState(10, 0.0F));
entityplayermp.addPotionEffect(new PotionEffect(potion, 6000, 2));
}
}
}
if (!this.hasHome())
{
this.setHomePosAndDistance(new BlockPos(this), 16);
}
}
示例5: updateAITasks
import net.minecraft.entity.player.EntityPlayerMP; //導入方法依賴的package包/類
protected void updateAITasks()
{
super.updateAITasks();
if (this.isElder())
{
int i = 1200;
int j = 1200;
int k = 6000;
int l = 2;
if ((this.ticksExisted + this.getEntityId()) % 1200 == 0)
{
Potion potion = MobEffects.MINING_FATIGUE;
for (EntityPlayerMP entityplayermp : this.worldObj.getPlayers(EntityPlayerMP.class, new Predicate<EntityPlayerMP>()
{
public boolean apply(@Nullable EntityPlayerMP p_apply_1_)
{
return EntityGuardian.this.getDistanceSqToEntity(p_apply_1_) < 2500.0D && p_apply_1_.interactionManager.survivalOrAdventure();
}
}))
{
if (!entityplayermp.isPotionActive(potion) || entityplayermp.getActivePotionEffect(potion).getAmplifier() < 2 || entityplayermp.getActivePotionEffect(potion).getDuration() < 1200)
{
entityplayermp.connection.sendPacket(new SPacketChangeGameState(10, 0.0F));
entityplayermp.addPotionEffect(new PotionEffect(potion, 6000, 2));
}
}
}
if (!this.hasHome())
{
this.setHomePosAndDistance(new BlockPos(this), 16);
}
}
}