💣 Grenade
Grenades are Pickables which Characters can grab and throw. It explodes after X seconds after thrown, causing damage around.
🎒 Examples
local new_grenade = Grenade(
Vector(-900, 185, 215),
Rotator(0, 90, 90),
"nanos-world::SM_Grenade_G67",
"nanos-world::P_Grenade_Special",
"nanos-world::A_Explosion_Large"
)
🛠 Constructors
Default Constructor
No description provided
local my_grenade = Grenade(location, rotation, static_mesh_asset?, explosion_particles?, explosion_sound?, collision_type?, gravity_enabled?)
Type | Name | Default | Description |
---|---|---|---|
Vector | location | Required parameter | No description provided |
Rotator | rotation | Required parameter | No description provided |
StaticMesh Reference | static_mesh_asset | nanos-world::SM_Grenade_G67 | No description provided |
Particle Reference | explosion_particles | nanos-world::P_Grenade_Special | No description provided |
Sound Reference | explosion_sound | nanos-world::A_Explosion_Large | No description provided |
CollisionType | collision_type | CollisionType.Auto | No description provided |
boolean | gravity_enabled | true | No description provided |
nanos world provides a special Particle* called nanos-world::P_Grenade_Special
which spawns different particles depending on the surface it explodes, and also if is underwater.
*This "Particle" is just a special identifier which can only be used on Grenades!
🗿 Static Functions
Inherited Entity Static Functions
Base Entityscripting-reference/classes/base-classes/Entity
Returns | Name | Description | |
---|---|---|---|
![]() | table of Base Entity | GetAll | Returns a table containing all Entities of the class this is called on |
![]() | Base Entity | GetByIndex | Returns a specific Entity of this class at an index |
![]() | integer | GetCount | Returns how many Entities of this class exist |
![]() | table of table | GetInheritedClasses | Gets a list of all directly inherited classes from this Class created with the Inheriting System |
![]() | iterator | GetPairs | Returns an iterator with all Entities of this class to be used with pairs() |
![]() | table or nil | GetParentClass | Gets the parent class if this Class was created with the Inheriting System |
![]() | table | Inherit | Inherits this class with the Inheriting System |
![]() | boolean | IsChildOf | Gets if this Class is child of another class if this Class was created with the Inheriting System |
![]() | function | Subscribe | Subscribes to an Event for all entities of this Class |
![]() | function | SubscribeRemote | Subscribes to a custom event called from server |
![]() | Unsubscribe | Unsubscribes all callbacks from this Event in this Class within this Package, or only the callback passed |
This class doesn't have own static functions.
🦠 Functions
Inherited Entity Functions
Base Entityscripting-reference/classes/base-classes/Entity
Returns | Name | Description | |
---|---|---|---|
BroadcastRemoteEvent | Calls a custom remote event directly on this entity to all Players | ||
CallRemoteEvent | Calls a custom remote event directly on this entity to a specific Player | ||
CallRemoteEvent | Calls a custom remote event directly on this entity | ||
Destroy | Destroys this Entity | ||
table of string | GetAllValuesKeys | Gets a list of all values keys | |
![]() | table | GetClass | Gets the class of this entity |
![]() | integer | GetID | Gets the universal network ID of this Entity (same on both client and server) |
![]() | any | GetValue | Gets a Value stored on this Entity at the given key |
![]() | boolean | IsA | Recursively checks if this entity is inherited from a Class |
![]() | boolean | IsValid | Returns true if this Entity is valid (i.e. wasn't destroyed and points to a valid Entity) |
![]() | SetValue | Sets a Value in this Entity | |
![]() | function | Subscribe | Subscribes to an Event on this specific entity |
![]() | function | SubscribeRemote | Subscribes to a custom event called from server on this specific entity |
![]() | Unsubscribe | Unsubscribes all callbacks from this Event in this Entity within this Package, or only the callback passed |
Inherited Actor Functions
Base Actorscripting-reference/classes/base-classes/Actor
Returns | Name | Description | |
---|---|---|---|
AddActorTag | Adds an Unreal Actor Tag to this Actor | ||
![]() | AddImpulse | Applies a force in world world to this Actor | |
AttachTo | Attaches this Actor to any other Actor, optionally at a specific bone | ||
Detach | Detaches this Actor from AttachedTo Actor | ||
table of string | GetActorTags | Gets all Unreal Actor Tags on this Actor | |
![]() | table of Base Actor | GetAttachedEntities | Gets all Actors attached to this Actor |
![]() | Base Actor or nil | GetAttachedTo | Gets the Actor this Actor is attached to |
table | GetBounds | Gets this Actor's bounds | |
![]() | CollisionType | GetCollision | Gets this Actor's collision type |
![]() | integer | GetDimension | Gets this Actor's dimension |
float | GetDistanceFromCamera | Gets the distance of this Actor from the Camera | |
![]() | Vector | GetForce | Gets this Actor's force (set by SetForce() ) |
![]() | Vector | GetLocation | Gets this Actor's location in the game world |
Player or nil | GetNetworkAuthority | Gets this Actor's Network Authority Player | |
![]() | Vector | GetRelativeLocation | Gets this Actor's Relative Location if it's attached |
![]() | Rotator | GetRelativeRotation | Gets this Actor's Relative Rotation if it's attached |
![]() | Rotator | GetRotation | Gets this Actor's angle in the game world |
![]() | Vector | GetScale | Gets this Actor's scale |
float | GetScreenPercentage | Gets the percentage of this Actor size in the screen | |
![]() | Vector | GetVelocity | Gets this Actor's current velocity |
boolean | HasAuthority | Gets if this Actor was spawned by the client side | |
boolean | HasNetworkAuthority | Returns true if the local Player is currently the Network Authority of this Actor | |
![]() | boolean | IsBeingDestroyed | Returns true if this Actor is being destroyed |
![]() | boolean | IsGravityEnabled | Returns true if gravity is enabled on this Actor |
![]() | boolean | IsInWater | Returns true if this Actor is in water |
![]() | boolean | IsNetworkDistributed | Returns true if this Actor is currently network distributed |
![]() | boolean | IsVisible | Returns true if this Actor is visible |
RemoveActorTag | Removes an Unreal Actor Tag from this Actor | ||
![]() | RotateTo | Smoothly rotates this actor to an angle over a certain time | |
SetCollision | Sets this Actor's collision type | ||
SetDimension | Sets this Actor's Dimension | ||
![]() | SetForce | Adds a permanent force to this Actor, set to Vector(0, 0, 0) to cancel | |
SetGravityEnabled | Sets whether gravity is enabled on this Actor | ||
SetHighlightEnabled | Sets whether the highlight is enabled on this Actor, and which highlight index to use | ||
SetLifeSpan | Sets the time (in seconds) before this Actor is destroyed. After this time has passed, the actor will be automatically destroyed. | ||
SetLocation | Sets this Actor's location in the game world | ||
SetNetworkAuthority | Sets the Player to have network authority over this Actor | ||
SetNetworkAuthorityAutoDistributed | Sets if this Actor will auto distribute the network authority between players | ||
SetOutlineEnabled | Sets whether the outline is enabled on this Actor, and which outline index to use | ||
SetRelativeLocation | Sets this Actor's relative location in local space (only if this actor is attached) | ||
SetRelativeRotation | Sets this Actor's relative rotation in local space (only if this actor is attached) | ||
SetRotation | Sets this Actor's rotation in the game world | ||
SetScale | Sets this Actor's scale | ||
![]() | SetVisibility | Sets whether the actor is visible or not | |
![]() | TranslateTo | Smoothly moves this actor to a location over a certain time | |
boolean | WasRecentlyRendered | Gets if this Actor was recently rendered on screen |
Inherited Paintable Functions
Base Paintablescripting-reference/classes/base-classes/Paintable
Returns | Name | Description | |
---|---|---|---|
![]() | ResetMaterial | Resets the material from the specified index to the original one | |
![]() | SetMaterial | Sets the material at the specified index of this Actor | |
![]() | SetMaterialColorParameter | Sets a Color parameter in this Actor's material | |
SetMaterialFromCanvas | Sets the material at the specified index of this Actor to a Canvas object | ||
SetMaterialFromSceneCapture | Sets the material at the specified index of this Actor to a SceneCapture object | ||
SetMaterialFromWebUI | Sets the material at the specified index of this Actor to a WebUI object | ||
![]() | SetMaterialScalarParameter | Sets a Scalar parameter in this Actor's material | |
![]() | SetMaterialTextureParameter | Sets a texture parameter in this Actor's material to an image on disk | |
![]() | SetMaterialVectorParameter | Sets a Vector parameter in this Actor's material | |
![]() | SetPhysicalMaterial | Overrides this Actor's Physical Material with a new one |
Inherited Pickable Functions
Base Pickablescripting-reference/classes/base-classes/Pickable
Returns | Name | Description | |
---|---|---|---|
![]() | AddSkeletalMeshAttached | Attaches a Skeletal Mesh as master pose to this entity | |
![]() | AddStaticMeshAttached | Attaches a Static Mesh to this entity | |
![]() | table of string | GetAllSkeletalMeshAttached | Gets all Skeletal Meshes attached to this entity |
![]() | table of string | GetAllStaticMeshAttached | Gets all Static Meshes attached to this entity |
![]() | Character or nil | GetHandler | Gets the Character, if it exists, that's holding this Pickable |
![]() | HandlingMode | GetHandlingMode | Gets the Handling Mode of this Pickable |
![]() | SkeletalMesh Reference | GetMesh | Gets the name of the asset this Pickable uses |
PullUse | Pulls the usage of this Pickable (will start firing if this is a weapon) | ||
ReleaseUse | Releases the usage of this Pickable (will stop firing if this is a weapon) | ||
![]() | RemoveAllSkeletalMeshesAttached | Removes all SkeletalMeshes attached | |
![]() | RemoveAllStaticMeshesAttached | Removes all StaticMeshes attached | |
![]() | RemoveSkeletalMeshAttached | Removes, if it exists, a SkeletalMesh from this Pickable given its custom ID | |
![]() | RemoveStaticMeshAttached | Removes, if it exists, a StaticMesh from this Pickable given its custom ID | |
SetAttachmentSettings | Sets the Attachment Settings for this Pickable (how it attaches to the Character when Picking up) | ||
SetCrosshairMaterial | Sets the crosshair material for this Pickable | ||
SetPickable | Sets if this Pickable can be picked up from ground by the player | ||
![]() | SetStaticMeshAttachedTransform | Sets a Static Mesh Attached location and rotation |
Returns | Name | Description | |
---|---|---|---|
Explode | Forces this grenade to Explode | ||
![]() | float | GetBaseDamage | Damage at Inner Radius |
![]() | float | GetDamageFalloff | Radius which BaseDamage will apply proportionally |
![]() | float | GetDamageInnerRadius | Radius which MinimumDamage will apply |
![]() | float | GetDamageOuterRadius | Radius which BaseDamage will apply |
![]() | float | GetMinimumDamage | Damage at Outer Radius |
![]() | float | GetThrowForce | Impulse applied when throwing |
![]() | float | GetTimeToExplode | Time until Explosion |
SetDamage | Sets Damage parameters of this Grenade | ||
SetThrowForce | Set Impulse applied when throwing | ||
SetTimeToExplode | Set Time until Explosion after thrown |

Explode
Forces this grenade to Explode
my_grenade:Explode()
See also Explode.

GetBaseDamage
Damage at Inner Radius
— Returns float.
local ret = my_grenade:GetBaseDamage()
See also SetDamage.

GetDamageFalloff
Radius which BaseDamage will apply proportionally
— Returns float.
local ret = my_grenade:GetDamageFalloff()
See also SetDamage.

GetDamageInnerRadius
Radius which MinimumDamage will apply
— Returns float.
local ret = my_grenade:GetDamageInnerRadius()
See also SetDamage.

GetDamageOuterRadius
Radius which BaseDamage will apply
— Returns float.
local ret = my_grenade:GetDamageOuterRadius()
See also SetDamage.

GetMinimumDamage
Damage at Outer Radius
— Returns float.
local ret = my_grenade:GetMinimumDamage()
See also SetDamage.

GetThrowForce
Impulse applied when throwing
— Returns float.
local ret = my_grenade:GetThrowForce()
See also SetThrowForce.

GetTimeToExplode
Time until Explosion
— Returns float.
local ret = my_grenade:GetTimeToExplode()
See also SetTimeToExplode.

SetDamage
Sets Damage parameters of this Grenade
my_grenade:SetDamage(base_damage?, minimum_damage?, damage_inner_radius?, damage_outer_radius?, damage_falloff?)
Type | Parameter | Default | Description |
---|---|---|---|
integer | base_damage? | 90 | Max damage when inner radius |
integer | minimum_damage? | 0 | Min damage when outer radius |
integer | damage_inner_radius? | 200 | Radius which damage will be 100% |
integer | damage_outer_radius? | 1000 | Radius which damage will be interpoled through falloff |
float | damage_falloff? | 1 | Lerp function between Max and Min damage |
See also GetBaseDamage, GetDamageFalloff, GetDamageInnerRadius, GetDamageOuterRadius, GetMinimumDamage.

SetThrowForce
Set Impulse applied when throwing
my_grenade:SetThrowForce(throw_force)
Type | Parameter | Default | Description |
---|---|---|---|
integer | throw_force | Required parameter | No description provided |
See also GetThrowForce.

SetTimeToExplode
Set Time until Explosion after thrown
my_grenade:SetTimeToExplode(time)
Type | Parameter | Default | Description |
---|---|---|---|
float | time | Required parameter | Time in seconds |
See also GetTimeToExplode.
🚀 Events
Inherited Entity Events
Base Entityscripting-reference/classes/base-classes/Entity
Name | Description | |
---|---|---|
![]() | ClassRegister | Triggered when a new Class is registered with the Inheriting System |
![]() | Destroy | Triggered when an Entity is destroyed |
![]() | Spawn | Triggered when an Entity is spawned/created |
![]() | ValueChange | Triggered when an Entity has a value changed with :SetValue() |
Inherited Actor Events
Base Actorscripting-reference/classes/base-classes/Actor
Name | Description | |
---|---|---|
DimensionChange | Triggered when an Actor changes it's dimension |
Inherited Pickable Events
Base Pickablescripting-reference/classes/base-classes/Pickable
Name | Description | |
---|---|---|
![]() | Drop | When a Character drops this Pickable |
![]() | Hit | When this Pickable hits something |
Interact | Triggered when a Character interacts with this Pickable (i.e. tries to pick it up) | |
![]() | PickUp | Triggered When a Character picks this up |
![]() | PullUse | Triggered when a Character presses the use button for this Pickable (i.e. clicks left mouse button with this equipped) |
![]() | ReleaseUse | Triggered when a Character releases the use button for this Pickable (i.e. releases left mouse button with this equipped) |
Name | Description | |
---|---|---|
![]() | Explode | Triggered when the grenade has exploded |
![]() | Throw | Triggered when the grenade has been thrown |

Explode
Triggered when the grenade has exploded
Grenade.Subscribe("Explode", function(self)
-- Explode was called
end)
Type | Argument | Description |
---|---|---|
Grenade | self | The grenade which exploded |
See also Explode.

Throw
Triggered when the grenade has been thrown
Grenade.Subscribe("Throw", function(self, handler)
-- Throw was called
end)