@@ -60,7 +60,6 @@ import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
6060import com.hypixel.hytale.server.core.entity.UUIDComponent ;
6161import com.hypixel.hytale.server.core.entity.entities.ProjectileComponent ;
6262import com.hypixel.hytale.server.core.entity.nameplate.Nameplate ;
63- import com.hypixel.hytale.server.core.modules.entity.component.Intangible ;
6463import com.hypixel.hytale.server.core.modules.entity.component.TransformComponent ;
6564import com.hypixel.hytale.server.core.modules.entity.tracker.NetworkId ;
6665import com.hypixel.hytale.server.core.universe.PlayerRef ;
@@ -92,7 +91,6 @@ public class TitleHologramCommand extends CommandBase {
9291 holder. putComponent(ProjectileComponent . getComponentType(), projectileComponent);
9392 holder. putComponent(TransformComponent . getComponentType(), new TransformComponent (playerTransform. getPosition(). clone(), playerTransform. getRotation(). clone()));
9493 holder. ensureComponent(UUIDComponent . getComponentType());
95- holder. ensureComponent(Intangible . getComponentType());
9694
9795 if (projectileComponent. getProjectile() == null ) {
9896 projectileComponent. initialize();
@@ -129,8 +127,6 @@ This retrieves:
129127| ` world ` | The world the player is currently in |
130128| ` playerTransform ` | The player’s position and rotation |
131129
132- This allows the hologram to be spawned ** exactly where the player is standing** .
133-
134130---
135131
136132### 2. Spawning on the World Thread
@@ -151,8 +147,7 @@ Holder<EntityStore> holder = EntityStore.REGISTRY.newHolder();
151147ProjectileComponent projectileComponent = new ProjectileComponent (" Projectile" );
152148```
153149
154- The projectile is only used as a ** valid entity shell** .
155- It will never move or behave like a real projectile.
150+ The projectile is only used as a valid entity shell. It will never move or behave like a real projectile.
156151
157152-- -
158153
@@ -162,17 +157,13 @@ It will never move or behave like a real projectile.
162157holder. putComponent(ProjectileComponent . getComponentType(), projectileComponent);
163158holder. putComponent(TransformComponent . getComponentType(), new TransformComponent (playerTransform. getPosition(). clone(), playerTransform. getRotation(). clone()));
164159holder. ensureComponent(UUIDComponent . getComponentType());
165- holder. ensureComponent(Intangible . getComponentType());
166160```
167161
168- This builds an invisible, stationary entity at the player’s position.
169-
170162| Component | Purpose |
171163| -------------------- - | ------------------------------------------------ |
172164| `ProjectileComponent ` | Provides a valid entity shell |
173165| `TransformComponent ` | Sets the entity’s position and rotation |
174166| `UUIDComponent ` | Gives the entity a unique identity |
175- | `Intangible ` | Makes the entity non- collidable and unselectable |
176167
177168The hologram will appear exactly at the player’s position and cannot be interacted with physically.
178169
@@ -213,8 +204,6 @@ holder.addComponent(
213204);
214205```
215206
216- These final components make the hologram visible and give it its text.
217-
218207| Component | Purpose |
219208| -------------------- - | ------------------------------ - |
220209| `NetworkId ` | Allows the entity to be synced |
@@ -234,4 +223,6 @@ This inserts the hologram entity into the world, making it active and visible.
234223
235224-- -
236225
237- ! [tile- hologram- 5 ](/ assets/ guides/ tile- hologram- 5. png)
226+ ! [tile- hologram- 5 ](/ assets/ guides/ tile- hologram- 5. png)
227+
228+ * Thanks to Al3xWarrior and Quito on Discord for initially discovering this feature. *
0 commit comments