Dota 2 Workshop Tools/Scripting/API/Global.CreateUnitByName: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
m (clean up, added deadend tag)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Dead end|date=January 2024}}
{{Note | This page is automatically generated.  Any changes may be overwritten}}
{{Note | This page is automatically generated.  Any changes may be overwritten}}
[[Category:Dota2Function]]
[[Category:Global]]


== Function Description ==
== Function Description ==


 
''' handle CreateUnitByName(string ''string_1'', Vector ''Vector_2'', bool ''bool_3'', handle ''handle_4'', handle ''handle_5'', int ''int_6'') '''
''' handle CreateUnitByName(string ''a'', Vector ''b'', bool ''c'', handle ''d'', handle ''e'', int ''f'') '''


''Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber )''
''Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber )''


== Parameters ==
== Parameters ==
{| class="standard-table" style="width: 100%;"
{| class="standard-table" style="width: 50%;"
! Type
! Type
! Name
! Name
! Description
! Description
! Example
|-
|-
| string
| string
| a
| string_1
| The name of the unit as referenced in the KV
| No Description Set
| "npc_dota_creature_troll_healer"
|-
|-
| Vector
| Vector
| b
| Vector_2
| The Vector at which the unit will be created
| No Description Set
| keys.caster:GetAbsOrigin()
|-
|-
| bool
| bool
| c
| bool_3
| Whether or not to find free space for the unit
| No Description Set
| true/false
|-
|-
| handle
| handle
| d
| handle_4
| NPC Owner, Unknown Function
| No Description Set
| nil
|-
|-
| handle
| handle
| e
| handle_5
| Unit Owner, Unknown Function
| No Description Set
| nil
|-
|-
| int
| int
| f
| int_6
| The Team ID in which to place the unit
| No Description Set
| keys.caster:GetTeam()
|}
|}


== Returns ==
== Returns ==


''handle'' - The handle to the unit that was created
''handle'' - No Description Set


== Example ==
[[Category:Dota2Function]]
 
[[Category:Global]]
The currently best known way to make a unit under the control of a player is something like
 
  function CreateUnit(keys)
      -- Create the unit around the caster and find free space for it to prevent getting suck
      local unit = CreateUnitByName("npc_dota_unit", keys.caster:GetAbsOrigin(), true, nil, nil, keys.caster:GetTeam())
      -- Set the owner of the new unit to the owner of the old unit
      unit.vOwner = keys.caster:GetOwner()
      -- Set the new owner as the controlling player
      unit:SetControllableByPlayer(keys.caster:GetOwner():GetPlayerID(), true )
  end

Latest revision as of 09:55, 21 January 2024

Dead End - Icon.png
This article has no Wikipedia icon links to other VDC articles. Please help improve this article by adding links Wikipedia icon that are relevant to the context within the existing text.
January 2024
Note.pngNote: This page is automatically generated. Any changes may be overwritten

Function Description

handle CreateUnitByName(string string_1, Vector Vector_2, bool bool_3, handle handle_4, handle handle_5, int int_6)

Creates a DOTA unit by its dota_npc_units.txt name ( szUnitName, vLocation, bFindClearSpace, hNPCOwner, hUnitOwner, iTeamNumber )

Parameters

Type Name Description
string string_1 No Description Set
Vector Vector_2 No Description Set
bool bool_3 No Description Set
handle handle_4 No Description Set
handle handle_5 No Description Set
int int_6 No Description Set

Returns

handle - No Description Set