CameraManager class

Пакет: com.hypixel.hytale.server.core.entity.entities.player

Файл: com/hypixel/hytale/server/core/entity/entities/player/CameraManager.java

implements: Component<EntityStore>

Поля (1)

МодификаторыТипИмя
final Map<MouseButtonType, MouseButtonState> mouseStates

Методы (13)

МодификаторыВозвратСигнатура
static ComponentType<EntityStore, CameraManager> getComponentTypeComponentType<EntityStore, CameraManager> getComponentType()
public Vector3i getLastMouseButtonPressedPositionVector3i getLastMouseButtonPressedPosition(MouseButtonType var1)
public Vector3i getLastMouseButtonReleasedPositionVector3i getLastMouseButtonReleasedPosition(MouseButtonType var1)
public Vector2dc getLastScreenPointVector2dc getLastScreenPoint()
public Vector3i getLastTargetBlockVector3i getLastTargetBlock()
public MouseButtonState getMouseButtonStateMouseButtonState getMouseButtonState(MouseButtonType var1)
public void handleMouseButtonStatevoid handleMouseButtonState(MouseButtonType var1, MouseButtonState var2, Vector3i var3)
if if(var2 == MouseButtonState.Pressed)
if if(var2 == MouseButtonState.Released)
public void resetCameravoid resetCamera(@Nonnull PlayerRef var1)
public void setLastBlockPositionvoid setLastBlockPosition(Vector3i var1)
public void setLastScreenPointvoid setLastScreenPoint(Vector2d var1)
abstract this this()

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.entity.entities.player;

class="kw">import com.hypixel.hytale.component.Component;
class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.protocol.ClientCameraView;
class="kw">import com.hypixel.hytale.protocol.MouseButtonState;
class="kw">import com.hypixel.hytale.protocol.MouseButtonType;
class="kw">import com.hypixel.hytale.protocol.packets.camera.SetServerCamera;
class="kw">import com.hypixel.hytale.server.core.modules.entity.EntityModule;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import java.util.EnumMap;
class="kw">import java.util.Map;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector2d;
class="kw">import org.joml.Vector2dc;
class="kw">import org.joml.Vector3i;

class="kw">public class CameraManager class="kw">implements Component<EntityStore> {
   class="kw">private class="kw">final Map<MouseButtonType, MouseButtonState> mouseStates = new EnumMap<>(MouseButtonType.class);
   class="kw">private class="kw">final Map<MouseButtonType, Vector3i> mousePressedPosition = new EnumMap<>(MouseButtonType.class);
   class="kw">private class="kw">final Map<MouseButtonType, Vector3i> mouseReleasedPosition = new EnumMap<>(MouseButtonType.class);
   class="kw">private Vector2d lastScreenPoint = new Vector2d();
   class="kw">private Vector3i lastTargetBlock;

   class="kw">public class="kw">static ComponentType<EntityStore, CameraManager> getComponentType() {
      class="kw">return EntityModule.get().getCameraManagerComponentType();
   }

   class="kw">public CameraManager() {
   }

   class="kw">public CameraManager(@Nonnull CameraManager var1) {
      this();
      this.lastScreenPoint = var1.lastScreenPoint;
      this.lastTargetBlock = var1.lastTargetBlock;
   }

   class="kw">public void resetCamera(@Nonnull PlayerRef var1) {
      var1.getPacketHandler().writeNoCache(new SetServerCamera(ClientCameraView.Custom, false, null));
      this.mouseStates.clear();
   }

   class="kw">public void handleMouseButtonState(MouseButtonType var1, MouseButtonState var2, Vector3i var3) {
      this.mouseStates.put(var1, var2);
      if (var2 == MouseButtonState.Pressed) {
         this.mousePressedPosition.put(var1, var3);
      }

      if (var2 == MouseButtonState.Released) {
         this.mouseReleasedPosition.put(var1, var3);
      }
   }

   class="kw">public MouseButtonState getMouseButtonState(MouseButtonType var1) {
      class="kw">return this.mouseStates.getOrDefault(var1, MouseButtonState.Released);
   }

   class="kw">public Vector3i getLastMouseButtonPressedPosition(MouseButtonType var1) {
      class="kw">return this.mousePressedPosition.get(var1);
   }

   class="kw">public Vector3i getLastMouseButtonReleasedPosition(MouseButtonType var1) {
      class="kw">return this.mouseReleasedPosition.get(var1);
   }

   class="kw">public void setLastScreenPoint(Vector2d var1) {
      this.lastScreenPoint.set(var1);
   }

   class="kw">public Vector2dc getLastScreenPoint() {
      class="kw">return this.lastScreenPoint;
   }

   class="kw">public void setLastBlockPosition(Vector3i var1) {
      this.lastTargetBlock = var1;
   }

   class="kw">public Vector3i getLastTargetBlock() {
      class="kw">return this.lastTargetBlock;
   }

   @Nonnull
   @Override
   class="kw">public Component<EntityStore> clone() {
      class="kw">return new CameraManager(this);
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "CameraManager{mouseStates="
         + this.mouseStates
         + ", mousePressedPosition="
         + this.mousePressedPosition
         + ", mouseReleasedPosition="
         + this.mouseReleasedPosition
         + ", lastScreenPoint="
         + this.lastScreenPoint
         + ", lastTargetBlock="
         + this.lastTargetBlock
         + "}";
   }
}