Class ConstructionElement
java.lang.Object
net.risingworld.api.objects.world.ConstructionElement
Represents a "ConstructionElement" which was placed in the world (or spawned naturally).
This could be a block (or any other shape like a cylinder, slope etc), or a window, glass pane etc.
A ConstructionElement is always bound to a chunk.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
deleteAttribute
(String key) Removes a player attribute.void
destroy
(boolean silent) Destroys the construction element.boolean
getAttribute
(String key) Gets the value to which the specified key is mapped, or null if no attribute is stored for that key.Gets a set containing all keys and attributes of this object.int
Gets the x offset of the chunk (which contains the construction element).int
Gets the y offset of the chunk (which contains the construction element).int
Gets the z offset of the chunk (which contains the construction element).int
getColor()
long
Gets a unix timestamp (seconds) when this element was first spawned / placedlong
Gets the unique global ID of the construction element.int
Gets the database ID of the player who placed the block.Gets the rotation of this construction element.getScale()
Gets the scale (along x, y and z) of this construction element.short
Gets the remaining strength of the construction element (if strength goes to 0, e.g after hitting the construction element, it will break).int
float
byte
Gets the world position of this element.boolean
hasAttribute
(String key) Gets whether or not the provided attribute exists.boolean
hasAttribute
(String key, Class type) Gets whether or not the provided attribute exists (also checks if it has a specific type).int
hashCode()
boolean
isValid()
void
setAttribute
(String key, Object value) Stores an attribute for this construction element.void
setColor
(int color) Sets a new color for this construction element.void
Sets a new color for this construction element.void
setPlayerDbID
(int dbID) Changes the owner database ID (i.e the database ID of the player who should be considered the element owner).void
setRotation
(Quaternion rotation) Sets the rotation of this construction element.void
setScale
(float x, float y, float z) Sets a new scale for this construction element.void
Sets a new scale for this construction element.void
setStrength
(short strength) Sets a new strength for the construction element.void
setSurfaceOffset
(Vector3f offset) void
setSurfaceOffsetAndScale
(Vector3f offset, Vector3f scale) void
setSurfaceScale
(Vector3f scale) void
setTexture
(int texture) void
setTextureScale
(float textureScale) void
setTypeID
(byte typeID)
-
Method Details
-
isValid
public boolean isValid() -
getGlobalID
public long getGlobalID()Gets the unique global ID of the construction element.- Returns:
- the object global ID.
-
getChunkPositionX
public int getChunkPositionX()Gets the x offset of the chunk (which contains the construction element).- Returns:
- the x chunk offset.
-
getChunkPositionY
public int getChunkPositionY()Gets the y offset of the chunk (which contains the construction element).- Returns:
- the y chunk offset.
-
getChunkPositionZ
public int getChunkPositionZ()Gets the z offset of the chunk (which contains the construction element).- Returns:
- the z chunk offset.
-
getTypeID
public byte getTypeID() -
setTypeID
public void setTypeID(byte typeID) -
getTexture
public int getTexture() -
setTexture
public void setTexture(int texture) -
getTextureScale
public float getTextureScale() -
setTextureScale
public void setTextureScale(float textureScale) -
getPlayerDbID
public int getPlayerDbID()Gets the database ID of the player who placed the block. -1 for naturally spawned elements- Returns:
- the owner database ID, or -1 if this elements was spawned naturally.
-
setPlayerDbID
public void setPlayerDbID(int dbID) Changes the owner database ID (i.e the database ID of the player who should be considered the element owner). Set to -1 to remove ownership.- Parameters:
dbID
- the unique database ID of the new owner, or -1 to remove ownership.
-
getCreationDate
public long getCreationDate()Gets a unix timestamp (seconds) when this element was first spawned / placed- Returns:
- a unix timestamp representing the creation date of the element.
-
getWorldPosition
Gets the world position of this element.- Returns:
- the global position.
-
getRotation
Gets the rotation of this construction element.- Returns:
- the element rotation.
-
setRotation
Sets the rotation of this construction element.- Parameters:
rotation
- the new rotation you want to set.
-
getScale
Gets the scale (along x, y and z) of this construction element. By default, the scale is 1 1 1- Returns:
- a new Vector3f containing the element scale factors.
-
setScale
public void setScale(float x, float y, float z) Sets a new scale for this construction element.- Parameters:
x
- the new scale along x (width).y
- the new scale along y (height).z
- the new scale along z (depth).
-
setScale
Sets a new scale for this construction element.- Parameters:
scale
- the new scale along x (width), y (height) and z (depth).
-
getSurfaceOffset
-
setSurfaceOffset
-
getSurfaceScale
-
setSurfaceScale
-
setSurfaceOffsetAndScale
-
getColor
public int getColor() -
setColor
public void setColor(int color) Sets a new color for this construction element.- Parameters:
color
- the new color as int rgba value.
-
setColor
Sets a new color for this construction element.- Parameters:
color
- the new color you want to set.
-
getStrength
public short getStrength()Gets the remaining strength of the construction element (if strength goes to 0, e.g after hitting the construction element, it will break).- Returns:
- the construction element strength.
-
setStrength
public void setStrength(short strength) Sets a new strength for the construction element. If you want to break the construction element, calldestroy(boolean)
instead.- Parameters:
strength
- the new strength you want to set.
-
destroy
public void destroy(boolean silent) Destroys the construction element.- Parameters:
silent
- true if you just want to remove the element, false if you want it to actually break (spawn debris, play break sound etc)
-
setAttribute
Stores an attribute for this construction element. You can store any type. Note that all attributes will be reset upon server restart!- Parameters:
key
- the name of the attribute.value
- the value/object you want to store. Set null to remove the attribute.
-
getAttribute
Gets the value to which the specified key is mapped, or null if no attribute is stored for that key.- Parameters:
key
- the name of the attribute.- Returns:
- the attribute that is stored for that key, or null of the key does not exists.
-
hasAttribute
Gets whether or not the provided attribute exists.- Parameters:
key
- the name of the attribute.- Returns:
- true if the attribute exists, false if not.
-
hasAttribute
Gets whether or not the provided attribute exists (also checks if it has a specific type).- Parameters:
key
- the name of the attribute.type
- the type of the attribute- Returns:
- true if the attribute exists and if it has the desired type, false if not.
-
deleteAttribute
Removes a player attribute. Does nothing if the attribute doesn't exist.- Parameters:
key
- the name of the attribute you want to delete.
-
getAttributes
Gets a set containing all keys and attributes of this object.
Be careful when modifying the set, because that affects the attributes.- Returns:
- a set containing all keys and attributes.
-
equals
-
hashCode
public int hashCode()
-