🔪 Melee
A Melee represents an Entity which can be Pickable by a Character and can be used to melee attack, Charactes can hold it with hands with pre-defined handling modes.
💂Authority
This class can only be spawned on 🟦 Server side.
👪Inheritance
🧑💻API Source
This page is auto-generated! The Functions, Properties and Events described here are defined in our GitHub's API Repository! Feel free to commit suggestions and changes to the source .json API files!
🎒 Examples
local crowbar = Melee(
Vector(-900, 185, 215),
Rotator(0, 90, 90),
"nanos-world::SM_Crowbar_01",
CollisionType.Normal,
true,
HandlingMode.SingleHandedMelee,
""
)
crowbar:SetScale(Vector(1.5, 1.5, 1.5))
crowbar:AddAnimationCharacterUse("nanos-world::AM_Mannequin_Melee_Slash_Attack")
crowbar:SetDamageSettings(0.3, 0.5)
crowbar:SetCooldown(1.0)
crowbar:SetBaseDamage(40)
🛠 Constructors
Default Constructor
local my_melee = Melee(location, rotation, asset, collision_type?, gravity_enabled?, handling_mode?, crosshair_material?, can_use?)
Type | Name | Default | Description |
---|---|---|---|
Vector | location | Required parameter | No description provided |
Rotator | rotation | Required parameter | No description provided |
StaticMesh Reference | asset | Required parameter | No description provided |
CollisionType | collision_type | CollisionType.Auto | No description provided |
boolean | gravity_enabled | true | No description provided |
HandlingMode | handling_mode | HandlingMode.Torch | No description provided |
Material Reference | crosshair_material |
| No description provided |
boolean | can_use | true | No description provided |
tip
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
Melee inherits from Base Entity Class, sharing it's methods and functions:
Base Entityscripting-reference/classes/base-classes/Entity
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 |
🦠 Functions
Inherited Entity Functions
Melee inherits from Base Entity Class, sharing it's methods and functions:
Base Entityscripting-reference/classes/base-classes/Entity
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
Melee inherits from Base Actor Class, sharing it's methods and functions:
Base Actorscripting-reference/classes/base-classes/Actor
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
Melee inherits from Base Paintable Class, sharing it's methods and functions:
Base Paintablescripting-reference/classes/base-classes/Paintable
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
Melee inherits from Base Pickable Class, sharing it's methods and functions:
Base Pickablescripting-reference/classes/base-classes/Pickable
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 | |
---|---|---|---|
AddAnimationCharacterUse | Sets an Animation when attacking | ||
ClearAnimationsCharacterUse | Clears the Character Attack Animation list | ||
table of Animation Reference | GetAnimationsCharacterUse | Gets the Animations when Character uses it | |
integer | GetBaseDamage | Gets the Base Damage | |
float | GetCooldown | Gets the Cooldown between usages | |
Sound Reference | GetSoundUse | Gets the Sound when Character uses it | |
SetBaseDamage | Sets the Base Damage | ||
SetCooldown | Sets the cooldown between attacking | ||
SetDamageSettings | Sets the times when to start applying damage and when to end | ||
SetImpactSound | Sets the Sound when hitting something | ||
SetSoundUse | Sets the Sound when attacking |
AddAnimationCharacterUse
Sets an Animation when attacking
You can add more than one animation, which will be selected randomly when attacking
my_melee:AddAnimationCharacterUse(asset_path, play_rate, slot_Type)
Type | Parameter | Default | Description |
---|---|---|---|
Animation Reference | asset_path | Required parameter | The Animation used when attacking |
float | play_rate | Required parameter | The Animation Play Rate |
AnimationSlotType | slot_Type | Required parameter | Whether to play it on upper body or full body |
ClearAnimationsCharacterUse
Clears the Character Attack Animation list
my_melee:ClearAnimationsCharacterUse()
GetAnimationsCharacterUse
Gets the Animations when Character uses it
— Returns table of Animation Reference.
local ret = my_melee:GetAnimationsCharacterUse()
GetBaseDamage
Gets the Base Damage
— Returns integer.
local ret = my_melee:GetBaseDamage()
See also SetBaseDamage.
GetCooldown
Gets the Cooldown between usages
— Returns float.
local ret = my_melee:GetCooldown()
See also SetCooldown.
GetSoundUse
Gets the Sound when Character uses it
— Returns Sound Reference.
local ret = my_melee:GetSoundUse()
See also SetSoundUse.
SetBaseDamage
Sets the Base Damage
my_melee:SetBaseDamage(damage?)
Type | Parameter | Default | Description |
---|---|---|---|
integer | damage? |
| The Base Damage value |
See also GetBaseDamage.
SetCooldown
Sets the cooldown between attacking
my_melee:SetCooldown(cooldown)
Type | Parameter | Default | Description |
---|---|---|---|
float | cooldown | Required parameter | No description provided |
See also GetCooldown.
SetDamageSettings
Sets the times when to start applying damage and when to end. During this time the collision of the melee will be enabled and the damage will be applied if it hits something
my_melee:SetDamageSettings(damage_start_time, damage_duration_time)
Type | Parameter | Default | Description |
---|---|---|---|
float | damage_start_time | Required parameter | The initial time to start applying damage |
float | damage_duration_time | Required parameter | The duration time to stop applying damage |
SetImpactSound
Sets the Sound when hitting something
Note: Surfaces Water and Flesh already have default sounds and must be explicitly set to override
my_melee:SetImpactSound(surface_type, asset_path, volume, pitch)
Type | Parameter | Default | Description |
---|---|---|---|
SurfaceType | surface_type | Required parameter | The surface to apply the sound. Use SurfaceType.Default to be the default to all hits |
Sound Reference | asset_path | Required parameter | The Sound used when attacking |
float | volume | Required parameter | No description provided |
float | pitch | Required parameter | No description provided |
SetSoundUse
Sets the Sound when attacking
my_melee:SetSoundUse(asset_path)
Type | Parameter | Default | Description |
---|---|---|---|
Sound Reference | asset_path | Required parameter | The Sound used when attacking |
See also GetSoundUse.
🚀 Events
Inherited Entity Events
Melee inherits from Base Entity Class, sharing it's events:
Base Entityscripting-reference/classes/base-classes/Entity
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
Melee inherits from Base Actor Class, sharing it's events:
Base Actorscripting-reference/classes/base-classes/Actor
Base Actorscripting-reference/classes/base-classes/Actor
Name | Description | |
---|---|---|
DimensionChange | Triggered when an Actor changes it's dimension |
Inherited Pickable Events
Melee inherits from Base Pickable Class, sharing it's events:
Base Pickablescripting-reference/classes/base-classes/Pickable
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 | |
---|---|---|
Attack | Triggered when the Character effectively attacks with this Melee |
Attack
Triggered when the Character effectively attacks with this Melee
Melee.Subscribe("Attack", function(self, handler)
-- Attack was called
end)