[email protected] 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529
  1. .. _class_@GDScript:
  2. @GDScript
  3. =========
  4. **Category:** Core
  5. Brief Description
  6. -----------------
  7. Built-in GDScript functions.
  8. Member Functions
  9. ----------------
  10. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  11. | :ref:`float<class_float>` | :ref:`sin<class_@GDScript_sin>` **(** :ref:`float<class_float>` s **)** |
  12. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  13. | :ref:`float<class_float>` | :ref:`cos<class_@GDScript_cos>` **(** :ref:`float<class_float>` s **)** |
  14. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  15. | :ref:`float<class_float>` | :ref:`tan<class_@GDScript_tan>` **(** :ref:`float<class_float>` s **)** |
  16. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  17. | :ref:`float<class_float>` | :ref:`sinh<class_@GDScript_sinh>` **(** :ref:`float<class_float>` s **)** |
  18. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  19. | :ref:`float<class_float>` | :ref:`cosh<class_@GDScript_cosh>` **(** :ref:`float<class_float>` s **)** |
  20. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  21. | :ref:`float<class_float>` | :ref:`tanh<class_@GDScript_tanh>` **(** :ref:`float<class_float>` s **)** |
  22. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  23. | :ref:`float<class_float>` | :ref:`asin<class_@GDScript_asin>` **(** :ref:`float<class_float>` s **)** |
  24. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  25. | :ref:`float<class_float>` | :ref:`acos<class_@GDScript_acos>` **(** :ref:`float<class_float>` s **)** |
  26. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  27. | :ref:`float<class_float>` | :ref:`atan<class_@GDScript_atan>` **(** :ref:`float<class_float>` s **)** |
  28. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  29. | :ref:`float<class_float>` | :ref:`atan2<class_@GDScript_atan2>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)** |
  30. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  31. | :ref:`float<class_float>` | :ref:`sqrt<class_@GDScript_sqrt>` **(** :ref:`float<class_float>` s **)** |
  32. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  33. | :ref:`float<class_float>` | :ref:`fmod<class_@GDScript_fmod>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)** |
  34. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`float<class_float>` | :ref:`fposmod<class_@GDScript_fposmod>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)** |
  36. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | :ref:`float<class_float>` | :ref:`floor<class_@GDScript_floor>` **(** :ref:`float<class_float>` s **)** |
  38. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | :ref:`float<class_float>` | :ref:`ceil<class_@GDScript_ceil>` **(** :ref:`float<class_float>` s **)** |
  40. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | :ref:`float<class_float>` | :ref:`round<class_@GDScript_round>` **(** :ref:`float<class_float>` s **)** |
  42. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | :ref:`float<class_float>` | :ref:`abs<class_@GDScript_abs>` **(** :ref:`float<class_float>` s **)** |
  44. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | :ref:`float<class_float>` | :ref:`sign<class_@GDScript_sign>` **(** :ref:`float<class_float>` s **)** |
  46. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | :ref:`float<class_float>` | :ref:`pow<class_@GDScript_pow>` **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)** |
  48. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. | :ref:`float<class_float>` | :ref:`log<class_@GDScript_log>` **(** :ref:`float<class_float>` s **)** |
  50. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  51. | :ref:`float<class_float>` | :ref:`exp<class_@GDScript_exp>` **(** :ref:`float<class_float>` s **)** |
  52. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  53. | :ref:`float<class_float>` | :ref:`isnan<class_@GDScript_isnan>` **(** :ref:`float<class_float>` s **)** |
  54. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  55. | :ref:`float<class_float>` | :ref:`isinf<class_@GDScript_isinf>` **(** :ref:`float<class_float>` s **)** |
  56. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  57. | :ref:`float<class_float>` | :ref:`ease<class_@GDScript_ease>` **(** :ref:`float<class_float>` s, :ref:`float<class_float>` curve **)** |
  58. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  59. | :ref:`float<class_float>` | :ref:`decimals<class_@GDScript_decimals>` **(** :ref:`float<class_float>` step **)** |
  60. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  61. | :ref:`float<class_float>` | :ref:`stepify<class_@GDScript_stepify>` **(** :ref:`float<class_float>` s, :ref:`float<class_float>` step **)** |
  62. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  63. | :ref:`float<class_float>` | :ref:`lerp<class_@GDScript_lerp>` **(** :ref:`float<class_float>` from, :ref:`float<class_float>` to, :ref:`float<class_float>` weight **)** |
  64. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  65. | :ref:`float<class_float>` | :ref:`dectime<class_@GDScript_dectime>` **(** :ref:`float<class_float>` value, :ref:`float<class_float>` amount, :ref:`float<class_float>` step **)** |
  66. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  67. | :ref:`Nil<class_nil>` | :ref:`randomize<class_@GDScript_randomize>` **(** **)** |
  68. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  69. | :ref:`int<class_int>` | :ref:`randi<class_@GDScript_randi>` **(** **)** |
  70. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  71. | :ref:`float<class_float>` | :ref:`randf<class_@GDScript_randf>` **(** **)** |
  72. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  73. | :ref:`float<class_float>` | :ref:`rand_range<class_@GDScript_rand_range>` **(** :ref:`float<class_float>` from, :ref:`float<class_float>` to **)** |
  74. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  75. | :ref:`Nil<class_nil>` | :ref:`seed<class_@GDScript_seed>` **(** :ref:`float<class_float>` seed **)** |
  76. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  77. | :ref:`Array<class_array>` | :ref:`rand_seed<class_@GDScript_rand_seed>` **(** :ref:`float<class_float>` seed **)** |
  78. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  79. | :ref:`float<class_float>` | :ref:`deg2rad<class_@GDScript_deg2rad>` **(** :ref:`float<class_float>` deg **)** |
  80. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  81. | :ref:`float<class_float>` | :ref:`rad2deg<class_@GDScript_rad2deg>` **(** :ref:`float<class_float>` rad **)** |
  82. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  83. | :ref:`float<class_float>` | :ref:`linear2db<class_@GDScript_linear2db>` **(** :ref:`float<class_float>` nrg **)** |
  84. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  85. | :ref:`float<class_float>` | :ref:`db2linear<class_@GDScript_db2linear>` **(** :ref:`float<class_float>` db **)** |
  86. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  87. | :ref:`float<class_float>` | :ref:`max<class_@GDScript_max>` **(** :ref:`float<class_float>` a, :ref:`float<class_float>` b **)** |
  88. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  89. | :ref:`float<class_float>` | :ref:`min<class_@GDScript_min>` **(** :ref:`float<class_float>` a, :ref:`float<class_float>` b **)** |
  90. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  91. | :ref:`float<class_float>` | :ref:`clamp<class_@GDScript_clamp>` **(** :ref:`float<class_float>` val, :ref:`float<class_float>` min, :ref:`float<class_float>` max **)** |
  92. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  93. | :ref:`int<class_int>` | :ref:`nearest_po2<class_@GDScript_nearest_po2>` **(** :ref:`int<class_int>` val **)** |
  94. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  95. | :ref:`WeakRef<class_weakref>` | :ref:`weakref<class_@GDScript_weakref>` **(** :ref:`Object<class_object>` obj **)** |
  96. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  97. | :ref:`FuncRef<class_funcref>` | :ref:`funcref<class_@GDScript_funcref>` **(** :ref:`Object<class_object>` instance, :ref:`String<class_string>` funcname **)** |
  98. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  99. | :ref:`Object<class_object>` | :ref:`convert<class_@GDScript_convert>` **(** Variant what, :ref:`int<class_int>` type **)** |
  100. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  101. | :ref:`int<class_int>` | :ref:`typeof<class_@GDScript_typeof>` **(** Variant what **)** |
  102. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  103. | :ref:`String<class_string>` | :ref:`str<class_@GDScript_str>` **(** Variant what, Variant ... **)** |
  104. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  105. | :ref:`Nil<class_nil>` | :ref:`print<class_@GDScript_print>` **(** Variant what, Variant ... **)** |
  106. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  107. | :ref:`Nil<class_nil>` | :ref:`printt<class_@GDScript_printt>` **(** Variant what, Variant ... **)** |
  108. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  109. | :ref:`Nil<class_nil>` | :ref:`prints<class_@GDScript_prints>` **(** Variant what, Variant ... **)** |
  110. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  111. | :ref:`Nil<class_nil>` | :ref:`printerr<class_@GDScript_printerr>` **(** Variant what, Variant ... **)** |
  112. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  113. | :ref:`Nil<class_nil>` | :ref:`printraw<class_@GDScript_printraw>` **(** Variant what, Variant ... **)** |
  114. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  115. | :ref:`String<class_string>` | :ref:`var2str<class_@GDScript_var2str>` **(** Variant var **)** |
  116. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  117. | Variant | :ref:`str2var<class_@GDScript_str2var>` **(** :ref:`String<class_string>` string **)** |
  118. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  119. | :ref:`RawArray<class_rawarray>` | :ref:`var2bytes<class_@GDScript_var2bytes>` **(** Variant var **)** |
  120. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  121. | Variant | :ref:`bytes2var<class_@GDScript_bytes2var>` **(** :ref:`RawArray<class_rawarray>` bytes **)** |
  122. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  123. | :ref:`Array<class_array>` | :ref:`range<class_@GDScript_range>` **(** Variant ... **)** |
  124. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  125. | :ref:`Resource<class_resource>` | :ref:`load<class_@GDScript_load>` **(** :ref:`String<class_string>` path **)** |
  126. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  127. | :ref:`Dictionary<class_dictionary>` | :ref:`inst2dict<class_@GDScript_inst2dict>` **(** :ref:`Object<class_object>` inst **)** |
  128. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  129. | :ref:`Object<class_object>` | :ref:`dict2inst<class_@GDScript_dict2inst>` **(** :ref:`Dictionary<class_dictionary>` dict **)** |
  130. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  131. | :ref:`int<class_int>` | :ref:`hash<class_@GDScript_hash>` **(** Variant var:Variant **)** |
  132. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  133. | :ref:`Color<class_color>` | :ref:`Color8<class_@GDScript_Color8>` **(** :ref:`int<class_int>` r8, :ref:`int<class_int>` g8, :ref:`int<class_int>` b8, :ref:`int<class_int>` a8 **)** |
  134. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  135. | :ref:`Nil<class_nil>` | :ref:`print_stack<class_@GDScript_print_stack>` **(** **)** |
  136. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  137. | :ref:`Object<class_object>` | :ref:`instance_from_id<class_@GDScript_instance_from_id>` **(** :ref:`int<class_int>` instance_id **)** |
  138. +--------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------+
  139. Numeric Constants
  140. -----------------
  141. - **PI** = **3.141593** --- Constant that represents how many times the diameter of a circumference fits around it's perimeter.
  142. Description
  143. -----------
  144. This contains the list of built-in gdscript functions. Mostly math functions and other utilities. Everything else is expanded by objects.
  145. Member Function Description
  146. ---------------------------
  147. .. _class_@GDScript_sin:
  148. - :ref:`float<class_float>` **sin** **(** :ref:`float<class_float>` s **)**
  149. Standard sine function.
  150. .. _class_@GDScript_cos:
  151. - :ref:`float<class_float>` **cos** **(** :ref:`float<class_float>` s **)**
  152. Standard cosine function.
  153. .. _class_@GDScript_tan:
  154. - :ref:`float<class_float>` **tan** **(** :ref:`float<class_float>` s **)**
  155. Standard tangent function.
  156. .. _class_@GDScript_sinh:
  157. - :ref:`float<class_float>` **sinh** **(** :ref:`float<class_float>` s **)**
  158. Hyperbolic sine.
  159. .. _class_@GDScript_cosh:
  160. - :ref:`float<class_float>` **cosh** **(** :ref:`float<class_float>` s **)**
  161. Hyperbolic cosine.
  162. .. _class_@GDScript_tanh:
  163. - :ref:`float<class_float>` **tanh** **(** :ref:`float<class_float>` s **)**
  164. Hyperbolic tangent.
  165. .. _class_@GDScript_asin:
  166. - :ref:`float<class_float>` **asin** **(** :ref:`float<class_float>` s **)**
  167. Arc-sine.
  168. .. _class_@GDScript_acos:
  169. - :ref:`float<class_float>` **acos** **(** :ref:`float<class_float>` s **)**
  170. Arc-cosine.
  171. .. _class_@GDScript_atan:
  172. - :ref:`float<class_float>` **atan** **(** :ref:`float<class_float>` s **)**
  173. Arc-tangent.
  174. .. _class_@GDScript_atan2:
  175. - :ref:`float<class_float>` **atan2** **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)**
  176. Arc-tangent that takes a 2D vector as argument, retuns the full -pi to +pi range.
  177. .. _class_@GDScript_sqrt:
  178. - :ref:`float<class_float>` **sqrt** **(** :ref:`float<class_float>` s **)**
  179. Square root.
  180. .. _class_@GDScript_fmod:
  181. - :ref:`float<class_float>` **fmod** **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)**
  182. Module (remainder of x/y).
  183. .. _class_@GDScript_fposmod:
  184. - :ref:`float<class_float>` **fposmod** **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)**
  185. Module (remainder of x/y) that wraps equally in positive and negative.
  186. .. _class_@GDScript_floor:
  187. - :ref:`float<class_float>` **floor** **(** :ref:`float<class_float>` s **)**
  188. Floor (rounds down to nearest integer).
  189. .. _class_@GDScript_ceil:
  190. - :ref:`float<class_float>` **ceil** **(** :ref:`float<class_float>` s **)**
  191. Ceiling (rounds up to nearest integer).
  192. .. _class_@GDScript_round:
  193. - :ref:`float<class_float>` **round** **(** :ref:`float<class_float>` s **)**
  194. Round to nearest integer.
  195. .. _class_@GDScript_abs:
  196. - :ref:`float<class_float>` **abs** **(** :ref:`float<class_float>` s **)**
  197. Remove sign (works for integer and float).
  198. .. _class_@GDScript_sign:
  199. - :ref:`float<class_float>` **sign** **(** :ref:`float<class_float>` s **)**
  200. Return sign (-1 or +1).
  201. .. _class_@GDScript_pow:
  202. - :ref:`float<class_float>` **pow** **(** :ref:`float<class_float>` x, :ref:`float<class_float>` y **)**
  203. Power function, x elevate to y.
  204. .. _class_@GDScript_log:
  205. - :ref:`float<class_float>` **log** **(** :ref:`float<class_float>` s **)**
  206. Natural logarithm.
  207. .. _class_@GDScript_exp:
  208. - :ref:`float<class_float>` **exp** **(** :ref:`float<class_float>` s **)**
  209. Exponential logarithm.
  210. .. _class_@GDScript_isnan:
  211. - :ref:`float<class_float>` **isnan** **(** :ref:`float<class_float>` s **)**
  212. Return true if the float is not a number.
  213. .. _class_@GDScript_isinf:
  214. - :ref:`float<class_float>` **isinf** **(** :ref:`float<class_float>` s **)**
  215. Return true if the float is infinite.
  216. .. _class_@GDScript_ease:
  217. - :ref:`float<class_float>` **ease** **(** :ref:`float<class_float>` s, :ref:`float<class_float>` curve **)**
  218. Easing function, based on exponent. 0 is constant, 1 is linear, 0 to 1 is ease-in, 1+ is ease out. Negative values are in-out/out in.
  219. .. _class_@GDScript_decimals:
  220. - :ref:`float<class_float>` **decimals** **(** :ref:`float<class_float>` step **)**
  221. Return the amount of decimals in the floating point value.
  222. .. _class_@GDScript_stepify:
  223. - :ref:`float<class_float>` **stepify** **(** :ref:`float<class_float>` s, :ref:`float<class_float>` step **)**
  224. Snap float value to a given step.
  225. .. _class_@GDScript_lerp:
  226. - :ref:`float<class_float>` **lerp** **(** :ref:`float<class_float>` from, :ref:`float<class_float>` to, :ref:`float<class_float>` weight **)**
  227. Linear interpolates between two values by a normalized value.
  228. .. _class_@GDScript_dectime:
  229. - :ref:`float<class_float>` **dectime** **(** :ref:`float<class_float>` value, :ref:`float<class_float>` amount, :ref:`float<class_float>` step **)**
  230. Decreases time by a specified amount.
  231. .. _class_@GDScript_randomize:
  232. - :ref:`Nil<class_nil>` **randomize** **(** **)**
  233. Reset the seed of the random number generator with a new, different one.
  234. .. _class_@GDScript_randi:
  235. - :ref:`int<class_int>` **randi** **(** **)**
  236. Random 32 bits value (integer). To obtain a value from 0 to N, you can use remainder, like (for random from 0 to 19): randi() % 20.
  237. .. _class_@GDScript_randf:
  238. - :ref:`float<class_float>` **randf** **(** **)**
  239. Random value (0 to 1 float).
  240. .. _class_@GDScript_rand_range:
  241. - :ref:`float<class_float>` **rand_range** **(** :ref:`float<class_float>` from, :ref:`float<class_float>` to **)**
  242. Random range, any floating point value between 'from' and 'to'
  243. .. _class_@GDScript_seed:
  244. - :ref:`Nil<class_nil>` **seed** **(** :ref:`float<class_float>` seed **)**
  245. .. _class_@GDScript_rand_seed:
  246. - :ref:`Array<class_array>` **rand_seed** **(** :ref:`float<class_float>` seed **)**
  247. Random from seed, pass a seed and an array with both number and new seed is returned.
  248. .. _class_@GDScript_deg2rad:
  249. - :ref:`float<class_float>` **deg2rad** **(** :ref:`float<class_float>` deg **)**
  250. Convert from degrees to radians.
  251. .. _class_@GDScript_rad2deg:
  252. - :ref:`float<class_float>` **rad2deg** **(** :ref:`float<class_float>` rad **)**
  253. Convert from radias to degrees.
  254. .. _class_@GDScript_linear2db:
  255. - :ref:`float<class_float>` **linear2db** **(** :ref:`float<class_float>` nrg **)**
  256. Convert from linear energy to decibels (audio).
  257. .. _class_@GDScript_db2linear:
  258. - :ref:`float<class_float>` **db2linear** **(** :ref:`float<class_float>` db **)**
  259. Convert from decibels to linear energy (audio).
  260. .. _class_@GDScript_max:
  261. - :ref:`float<class_float>` **max** **(** :ref:`float<class_float>` a, :ref:`float<class_float>` b **)**
  262. Return the maximum of two values.
  263. .. _class_@GDScript_min:
  264. - :ref:`float<class_float>` **min** **(** :ref:`float<class_float>` a, :ref:`float<class_float>` b **)**
  265. Return the minimum of two values.
  266. .. _class_@GDScript_clamp:
  267. - :ref:`float<class_float>` **clamp** **(** :ref:`float<class_float>` val, :ref:`float<class_float>` min, :ref:`float<class_float>` max **)**
  268. Clamp both values to a range.
  269. .. _class_@GDScript_nearest_po2:
  270. - :ref:`int<class_int>` **nearest_po2** **(** :ref:`int<class_int>` val **)**
  271. Return the nearest larger power of 2 for an integer.
  272. .. _class_@GDScript_weakref:
  273. - :ref:`WeakRef<class_weakref>` **weakref** **(** :ref:`Object<class_object>` obj **)**
  274. Return a weak reference to an object.
  275. .. _class_@GDScript_funcref:
  276. - :ref:`FuncRef<class_funcref>` **funcref** **(** :ref:`Object<class_object>` instance, :ref:`String<class_string>` funcname **)**
  277. Returns a reference to the specified function
  278. .. _class_@GDScript_convert:
  279. - :ref:`Object<class_object>` **convert** **(** Variant what, :ref:`int<class_int>` type **)**
  280. Convert from a type to another in the best way possible. The "type" parameter uses the enum TYPE\_\* in :ref:`@Global Scope<class_@global scope>`.
  281. .. _class_@GDScript_typeof:
  282. - :ref:`int<class_int>` **typeof** **(** Variant what **)**
  283. Returns the internal type of the given Variant object, using the TYPE\_\* enum in :ref:`@Global Scope<class_@global scope>`.
  284. .. _class_@GDScript_str:
  285. - :ref:`String<class_string>` **str** **(** Variant what, Variant ... **)**
  286. Convert one or more arguments to strings in the best way possible.
  287. .. _class_@GDScript_print:
  288. - :ref:`Nil<class_nil>` **print** **(** Variant what, Variant ... **)**
  289. Print one or more arguments to strings in the best way possible to a console line.
  290. .. _class_@GDScript_printt:
  291. - :ref:`Nil<class_nil>` **printt** **(** Variant what, Variant ... **)**
  292. Print one or more arguments to the console with a tab between each argument.
  293. .. _class_@GDScript_prints:
  294. - :ref:`Nil<class_nil>` **prints** **(** Variant what, Variant ... **)**
  295. .. _class_@GDScript_printerr:
  296. - :ref:`Nil<class_nil>` **printerr** **(** Variant what, Variant ... **)**
  297. Print one or more arguments to strings in the best way possible to standard error line.
  298. .. _class_@GDScript_printraw:
  299. - :ref:`Nil<class_nil>` **printraw** **(** Variant what, Variant ... **)**
  300. Print one or more arguments to strings in the best way possible to console. No newline is added at the end.
  301. .. _class_@GDScript_var2str:
  302. - :ref:`String<class_string>` **var2str** **(** Variant var **)**
  303. Converts the value of a variable to a String.
  304. .. _class_@GDScript_str2var:
  305. - Variant **str2var** **(** :ref:`String<class_string>` string **)**
  306. .. _class_@GDScript_var2bytes:
  307. - :ref:`RawArray<class_rawarray>` **var2bytes** **(** Variant var **)**
  308. .. _class_@GDScript_bytes2var:
  309. - Variant **bytes2var** **(** :ref:`RawArray<class_rawarray>` bytes **)**
  310. .. _class_@GDScript_range:
  311. - :ref:`Array<class_array>` **range** **(** Variant ... **)**
  312. Return an array with the given range. Range can be 1 argument N (0 to N-1), two arguments (initial, final-1) or three arguments (initial,final-1,increment).
  313. .. _class_@GDScript_load:
  314. - :ref:`Resource<class_resource>` **load** **(** :ref:`String<class_string>` path **)**
  315. Load a resource from the filesystem, pass a valid path as argument.
  316. .. _class_@GDScript_inst2dict:
  317. - :ref:`Dictionary<class_dictionary>` **inst2dict** **(** :ref:`Object<class_object>` inst **)**
  318. Convert a script class instance to a dictionary (useful for serializing).
  319. .. _class_@GDScript_dict2inst:
  320. - :ref:`Object<class_object>` **dict2inst** **(** :ref:`Dictionary<class_dictionary>` dict **)**
  321. Convert a previously converted instances to dictionary back into an instance. Useful for deserializing.
  322. .. _class_@GDScript_hash:
  323. - :ref:`int<class_int>` **hash** **(** Variant var:Variant **)**
  324. Hashes the variable passed and returns an integer.
  325. .. _class_@GDScript_Color8:
  326. - :ref:`Color<class_color>` **Color8** **(** :ref:`int<class_int>` r8, :ref:`int<class_int>` g8, :ref:`int<class_int>` b8, :ref:`int<class_int>` a8 **)**
  327. .. _class_@GDScript_print_stack:
  328. - :ref:`Nil<class_nil>` **print_stack** **(** **)**
  329. Print a stack track at code location, only works when running with debugger turned on.
  330. .. _class_@GDScript_instance_from_id:
  331. - :ref:`Object<class_object>` **instance_from_id** **(** :ref:`int<class_int>` instance_id **)**