当前位置: 首页>>代码示例>>Java>>正文


Java EntityPlayerMP.extinguish方法代码示例

本文整理汇总了Java中net.minecraft.entity.player.EntityPlayerMP.extinguish方法的典型用法代码示例。如果您正苦于以下问题:Java EntityPlayerMP.extinguish方法的具体用法?Java EntityPlayerMP.extinguish怎么用?Java EntityPlayerMP.extinguish使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在net.minecraft.entity.player.EntityPlayerMP的用法示例。


在下文中一共展示了EntityPlayerMP.extinguish方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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));
			}
		}
	}
}
 
开发者ID:blay09,项目名称:HardcoreRevival,代码行数:35,代码来源:RescueHandler.java

示例2: initialisePlayer

import net.minecraft.entity.player.EntityPlayerMP; //导入方法依赖的package包/类
private void initialisePlayer(String username, String agentname)
{
    AgentSection as = getAgentSectionFromAgentName(agentname);
    EntityPlayerMP player = getPlayerFromUsername(username);

    if (player != null && as != null)
    {
        if ((player.getHealth() <= 0 || player.isDead || !player.isEntityAlive()))
        {
            player.markPlayerActive();
            player = MinecraftServer.getServer().getConfigurationManager().recreatePlayerEntity(player, player.dimension, false);
            player.playerNetServerHandler.playerEntity = player;
        }

        // Reset their food and health:
        player.setHealth(player.getMaxHealth());
        player.getFoodStats().addStats(20, 40);
        player.maxHurtResistantTime = 1; // Set this to a low value so that lava will kill the player straight away.
        disablePlayerGracePeriod(player);   // Otherwise player will be invulnerable for the first 60 ticks.
        player.extinguish();	// In case the player was left burning.

        // Set their initial position and speed:
        PosAndDirection pos = as.getAgentStart().getPlacement();
        if (pos != null) {
            player.rotationYaw = pos.getYaw().floatValue();
            player.rotationPitch = pos.getPitch().floatValue();
            player.setPositionAndUpdate(pos.getX().doubleValue(),pos.getY().doubleValue(),pos.getZ().doubleValue());
            player.onUpdate();	// Needed to force scene to redraw
        }
        player.setVelocity(0, 0, 0);	// Minimise chance of drift!

        // Set their inventory:
        if (as.getAgentStart().getInventory() != null)
            initialiseInventory(player, as.getAgentStart().getInventory());

        // Set their game mode to spectator for now, to protect them while we wait for the rest of the cast to assemble:
        player.setGameType(GameType.SPECTATOR);
    }
}
 
开发者ID:Yarichi,项目名称:Proyecto-DASI,代码行数:40,代码来源:ServerStateMachine.java

示例3: onEntityDeath

import net.minecraft.entity.player.EntityPlayerMP; //导入方法依赖的package包/类
@HarshenEvent
public void onEntityDeath(LivingDeathEvent event)
{
	event.setCanceled(true);
	World world = event.getEntityLiving().world;
	if(!world.isRemote)
	{
		boolean flag = world.getGameRules().getBoolean("showDeathMessages");
		EntityPlayerMP player = (EntityPlayerMP) event.getEntity();
		player.connection.sendPacket(new SPacketCombatEvent(player.getCombatTracker(), SPacketCombatEvent.Event.ENTITY_DIED, flag));
        if (flag)
        {
            Team team = player.getTeam();
            if (team != null && team.getDeathMessageVisibility() != Team.EnumVisible.ALWAYS)
                if (team.getDeathMessageVisibility() == Team.EnumVisible.HIDE_FOR_OTHER_TEAMS)
                	player.mcServer.getPlayerList().sendMessageToAllTeamMembers(player, player.getCombatTracker().getDeathMessage());
                else if (team.getDeathMessageVisibility() == Team.EnumVisible.HIDE_FOR_OWN_TEAM)
                	player.mcServer.getPlayerList().sendMessageToTeamOrAllPlayers(player, player.getCombatTracker().getDeathMessage());
            else
            	player.mcServer.getPlayerList().sendMessage(player.getCombatTracker().getDeathMessage());
        }

        for (ScoreObjective scoreobjective : world.getScoreboard().getObjectivesFromCriteria(IScoreCriteria.DEATH_COUNT))
            player.getWorldScoreboard().getOrCreateScore(player.getName(), scoreobjective).incrementScore();

        EntityLivingBase entitylivingbase = player.getAttackingEntity();

        if (entitylivingbase != null)
        {
            EntityList.EntityEggInfo entitylist$entityegginfo = EntityList.ENTITY_EGGS.get(EntityList.getKey(entitylivingbase));
            if (entitylist$entityegginfo != null)
            	player.addStat(entitylist$entityegginfo.entityKilledByStat);
        }
        player.addStat(StatList.DEATHS);
        player.takeStat(StatList.TIME_SINCE_DEATH);
        player.extinguish();
        HarshenUtils.setFlag(player, 0, false);
        player.getCombatTracker().reset();
        INVENTORY_MAP.put(event.getEntity().getUniqueID(), ((EntityPlayer)event.getEntity()).inventory.writeToNBT(new NBTTagList()));
        HarshenUtils.damageOccuringItemNoPacket(player, HarshenItems.SOUL_BINDING_PENDANT, 1);
        if(HarshenUtils.getFirstOccuringItem(player, HarshenItems.SOUL_BINDING_PENDANT).getItemDamage() == 
        		HarshenUtils.getFirstOccuringItem(player, HarshenItems.SOUL_BINDING_PENDANT).getMaxDamage())
        			HarshenUtils.damageOccuringItemNoPacket(player, HarshenItems.SOUL_BINDING_PENDANT, 1);    	
	}	
	new HandlerHarshenInventory().onPlayerDeath(event);
}
 
开发者ID:kenijey,项目名称:harshencastle,代码行数:47,代码来源:SoulBindingPendant.java


注:本文中的net.minecraft.entity.player.EntityPlayerMP.extinguish方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。