Package com.forgeessentials.util.teleport

Source Code of com.forgeessentials.util.teleport.TeleportData

package com.forgeessentials.util.teleport;

import net.minecraft.entity.player.EntityPlayerMP;

import com.forgeessentials.util.OutputHandler;
import com.forgeessentials.util.PlayerInfo;
import com.forgeessentials.util.selections.WarpPoint;
import com.forgeessentials.util.selections.WorldPoint;

import cpw.mods.fml.common.FMLCommonHandler;

/**
* Uses by TeleportCenter.
*
* @author Dries007
*/

public class TeleportData {

  private WarpPoint point;
  private EntityPlayerMP player;
  private WorldPoint lastPos;
  private WorldPoint currentPos;
  private long startTime;

  public TeleportData(WarpPoint point, EntityPlayerMP player)
  {
    this.point = point;
    this.player = player;
    startTime = System.currentTimeMillis();
    lastPos = new WarpPoint(player);
  }

  public boolean checkTeleport()
  {
    currentPos = new WarpPoint(player);
    if (!lastPos.equals(currentPos))
    {
      OutputHandler.chatWarning(player, "Teleport cancelled.");
      return true;
    }

    if ((System.currentTimeMillis() - startTime) / 1000L > TeleportCenter.getTeleportWarmup())
    {
      teleport();
      return true;
    }
    else
    {
      return false;
    }
  }

  public void teleport()
  {
    PlayerInfo pi = PlayerInfo.getPlayerInfo(player.getPersistentID());
    pi.setLastTeleportOrigin(new WarpPoint(player));
    pi.setLastTeleportTime(System.currentTimeMillis());

    if (player.dimension != point.getDimension())
    {
      FMLCommonHandler.instance().getMinecraftServerInstance().getConfigurationManager()
          .transferPlayerToDimension(player, point.getDimension());
    }
    player.playerNetServerHandler.setPlayerLocation(point.xd, point.yd + 0.1, point.zd, point.yaw, point.pitch);
    OutputHandler.chatConfirmation(player, "Teleported.");
  }

  public EntityPlayerMP getPlayer()
  {
    return player;
  }

}
TOP

Related Classes of com.forgeessentials.util.teleport.TeleportData

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.