YellowAfterlife

GML type hints

Sep 30th, 2020 (edited)
643
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //{ locals
  2. var x:number;
  3. var y:number;
  4. var xstart:number;
  5. var ystart:number;
  6. var xprevious:number;
  7. var yprevious:number;
  8. //
  9. var hspeed:number;
  10. var vspeed:number;
  11. var speed:number;
  12. var direction:number;
  13. //
  14. var visible:Bool;
  15. var depth:number;
  16. //
  17. var bbox_left:number;
  18. var bbox_right:number;
  19. var bbox_top:number;
  20. var bbox_bottom:number;
  21. //
  22. var sprite_xoffset:number;
  23. var sprite_yoffset:number;
  24. var sprite_width:number;
  25. var sprite_height:number;
  26. //
  27. var sprite_index:Int;
  28. var mask_index:Int;
  29. var image_xscale:number;
  30. var image_yscale:number;
  31. var image_angle:number;
  32. var image_alpha:number;
  33. var image_blend:Int;
  34. var image_index:number;
  35. var image_number:Int;
  36. //
  37. var phy_position_x:number;
  38. var phy_position_y:number;
  39. //}
  40. //{ globals
  41. globalvar debug_mode:Bool;
  42. globalvar delta_time:number;
  43. globalvar mouse_x:number;
  44. globalvar mouse_y:number;
  45. globalvar room_width:number;
  46. globalvar room_height:number;
  47. globalvar current_time:number;
  48. globalvar current_day:Int;
  49. globalvar current_month:Int;
  50. globalvar current_year:Int;
  51. globalvar keyboard_string:String;
  52. globalvar keyboard_key:Int;
  53. globalvar keyboard_lastkey:Int;
  54. globalvar pi:number; // not really a var but
  55. globalvar os_type:Int;
  56. globalvar room:Int;
  57. globalvar async_load:map<string, any>;
  58. globalvar browser_width:Int;
  59. globalvar browser_height:Int;
  60. //}
  61. //{ views
  62. globalvar view_xview:Int[];
  63. globalvar view_yview:Int[];
  64. globalvar view_wview:Int[];
  65. globalvar view_hview:Int[];
  66. globalvar view_xport:Int[];
  67. globalvar view_yport:Int[];
  68. globalvar view_wport:Int[];
  69. globalvar view_hport:Int[];
  70. //}
  71. //{ backgrounds
  72. globalvar background_index:Int[];
  73. //}
  74. //{ import gml.Instance
  75. typedef inst = Instance;
  76. typedef instID = InstanceID;
  77. instance_create<T>(x:number, y:number, obj:Object<T>):T
  78. instance_exists<T>(obj:instID<T>):bool
  79. instance_number<T>(obj:instID<T>):int
  80. instance_position<T>(x:number, y:number, obj:instID<T>):T
  81. instance_nearest<T>(x:number, y:number, obj:instID<T>):T
  82. instance_furthest<T>(x:number, y:number, obj:instID<T>):T
  83. instance_place(x:number, y:number, obj:instID<T>):inst
  84. instance_find<T>(obj:Object<T>, n:nint):T
  85. :instance_destroy<T>(?what:InstID<T>, ?performevent:bool)~
  86. :instance_copy(performevent:bool):inst
  87. :alarm_get(:int):
  88. :alarm_set(:int, value:nint)
  89. :event_inherited()
  90. :event_user(ind:int)
  91. //}
  92. //{ Motion
  93. :motion_set(dir:number, speed:number)
  94. :motion_add(dir:number, speed:number)
  95. :place_free(x:number, y:number):bool
  96. :place_empty(x:number, y:number):bool
  97. :place_meeting(x:number, y:number, obj:index):
  98. :place_snapped(hsnap:number, vsnap:number):bool
  99. :move_random(hsnap:number, vsnap:number)
  100. :move_snap(hsnap:number, vsnap:number)
  101. :move_towards_point(x:number, y:number, sp:number)
  102. :move_contact_solid(dir:number, maxdist:number)
  103. :move_contact_all(dir:number, maxdist:number)
  104. :move_outside_solid(dir:number, maxdist:number)
  105. :move_outside_all(dir:number, maxdist:number)
  106. :move_bounce_solid(advanced:bool)
  107. :move_bounce_all(advanced:bool)
  108. :move_wrap(hor:bool, vert:bool, margin:number)
  109. :distance_to_point(x:number, y:number):number
  110. :distance_to_object(obj:index):number
  111. :position_empty(x:number, y:number):bool
  112. :position_meeting(x:number, y:number, obj:index):bool
  113. //}
  114. //{ Motion Planning
  115. :mp_linear_step(x:number,y:number,speed:number,checkall:bool):
  116. :mp_potential_step(x:number,y:number,speed:number,checkall:bool):
  117. :mp_linear_step_object(x:number,y:number,speed:number,obj:index):
  118. :mp_potential_step_object(x:number,y:number,speed:number,obj:index):
  119. :mp_linear_path(path:index,x:number,y:number,step:number,checkall:bool):
  120. :mp_potential_path(path:index,x:number,y:number,step:number,factor:number,checkall:bool):
  121. :mp_linear_path_object(path:index,x:number,y:number,step:number,obj:index):
  122. :mp_potential_path_object(path:index,x:number,y:number,step:number,factor:number,obj:index):
  123. :mp_grid_path(:index,path:index,xstart:number,ystart:number,xgoal:number,ygoal:number,allowdiag:bool):
  124. //}
  125. //{ Collision
  126. :collision_point(x:number, y:number, obj:index, prec:bool, notme:bool):
  127. :collision_rectangle(x1:number, y1:number, x2:number, y2:number, obj:index, prec, notme):
  128. :collision_circle(x1:number, y1:number, radius, obj:index, prec, notme):
  129. :collision_ellipse(x1:number, y1:number, x2:number, y2:number, obj:index, prec, notme):
  130. :collision_line(x1:number, y1:number, x2:number, y2:number, obj:index, prec, notme):
  131. //}
  132. //{ Collision helpers
  133. point_in_rectangle(px, py, x1:number, y1:number, x2:number, y2:number):
  134. point_in_triangle(px, py, x1:number, y1:number, x2:number, y2:number, x3:number, y3:number):
  135. point_in_circle(px, py, cx, cy, rad):
  136. rectangle_in_rectangle(sx1:number, sy1:number, sx2:number, sy2:number, dx1:number, dy1:number, dx2:number, dy2:number):
  137. rectangle_in_triangle(sx1:number, sy1:number, sx2:number, sy2:number, x1:number, y1:number, x2:number, y2:number, x3:number, y3:number):
  138. rectangle_in_circle(sx1:number, sy1:number, sx2:number, sy2:number, cx:number, cy:number, rad:number):
  139. //}
  140. //{
  141. :physics_fixture_create():GmlPhysicsFixture;
  142. physics_fixture_bind(fix:GmlPhysicsFixture, inst):GmlPhysicsFixtureBind;
  143. //}
  144. //{
  145. room*
  146. room_previous(numb):
  147. room_next(numb):
  148. //}
  149. //{ import gml.ext.GmType
  150. is_bool(val)#:bool
  151. is_real(val)#:bool
  152. is_string(val)#:bool
  153. is_array(val)#:bool
  154. is_undefined(val)#:bool
  155. is_int32(val)#:bool
  156. is_int64(val)#:bool
  157. is_ptr(val)#:bool
  158. is_vec3(val)#:bool
  159. is_vec4(val)#:bool
  160. is_matrix(val)#:bool
  161. typeof(val)#:bool
  162. ptr(val):bool
  163. //
  164. real(val)#:number
  165. string(val)#:string
  166. int64(val)#:int
  167. string_format(val:number,total:number,dec:number)#:string
  168. chr(val:int)#:string
  169. ansi_char(val)#:
  170. ord(char:string)#:int
  171. //}
  172. //{ import GmArray
  173. array_create<T>(size:number, ?value:T):array<T>
  174. array_length_1d(value):int
  175. array_length_2d(value, index:number):int
  176. array_height_2d(value):int
  177. array_equals(one, two):
  178. //}
  179. //{ import gml.Mathf
  180. abs(x:number)#:number
  181. round(x:number)#:int
  182. floor(x:number)#:int
  183. ceil(x:number)#:int
  184. sign(x:number)#:int
  185. frac(x:number)#:number
  186. sqrt(x:number)#:number
  187. sqr(x:number)#:number
  188. exp(x:number)#:number
  189. ln(x:number)#:number
  190. log2(x:number)#:number
  191. log10(x:number)#:number
  192. sin(radian_angle:number)#:number
  193. cos(radian_angle:number)#:number
  194. tan(radian_angle:number)#:number
  195. arcsin(x:number)#:number
  196. arccos(x:number)#:number
  197. arctan(x:number)#:number
  198. arctan2(y:number, x:number)#:number
  199. dsin(degree_angle:number)#:number
  200. dcos(degree_angle:number)#:number
  201. dtan(degree_angle:number)#:number
  202. darcsin(x:number)#:number
  203. darccos(x:number)#:number
  204. darctan(x:number)#:number
  205. darctan2(y:number, x:number)#:number
  206. degtorad(x:number)#:number
  207. radtodeg(x:number)#:number
  208. power(x:number, n:number)#:number
  209. logn(n:number, x:number)#:number
  210. min<T>(...:T)#~:T
  211. max<T>(...:T)#~:T
  212. mean(...:number)#:number
  213. median<T>(...:T)#:T
  214. clamp(val:number, min:number, max:number)#:number
  215. lerp(val1:number, val2:number, amount:number)#:number
  216. dot_product(x1:number, y1:number, x2:number, y2:number)#:
  217. dot_product_3d(x1:number, y1:number, z1:number, x2:number, y2:number, z2:number)#:
  218. dot_product_normalised(x1:number, y1:number, x2:number, y2:number)£#:
  219. dot_product_normalized(x1:number, y1:number, x2:number, y2:number)$#:
  220. dot_product_3d_normalised(x1:number, y1:number, z1:number, x2:number, y2:number, z2:number)£#:
  221. dot_product_3d_normalized(x1:number, y1:number, z1:number, x2:number, y2:number, z2:number)$#:
  222. angle_difference(src:number, dest:number)#:number
  223. point_distance_3d(x1:number, y1:number, z1:number, x2:number, y2:number, z2:number)#:number
  224. point_distance(x1:number, y1:number, x2:number, y2:number)#:number
  225. point_direction(x1:number, y1:number, x2:number, y2:number)#:number
  226. lengthdir_x(len:number, dir:number)#:number
  227. lengthdir_y(len:number, dir:number)#:number
  228. //}
  229. //{
  230. random(x:number):number
  231. irandom(x:number):int
  232. random_range(:number,:number):number
  233. irandom_range(:number,:number):int
  234. randomize():number
  235. choose<T>(...:T)~:T
  236. min(...:number):number
  237. max(...:number):number
  238. median(...:number):number
  239. //}
  240. //{ date
  241. date_current_datetime():date
  242. date_valid_datetime(year:int,month:int,day:int,hour:int,minute:int,second:int):date
  243. date_inc_year(:date,amount):date
  244. date_inc_month(:date,amount):date
  245. date_inc_week(:date,amount):date
  246. date_inc_day(:date,amount):date
  247. date_inc_hour(:date,amount):date
  248. date_inc_minute(:date,amount):date
  249. date_inc_second(:date,amount):date
  250. date_year_span(date1:date,date2:date):number
  251. date_month_span(date1:date,date2:date):number
  252. date_week_span(date1:date,date2:date):number
  253. date_day_span(date1:date,date2:date):number
  254. date_hour_span(date1:date,date2:date):number
  255. date_minute_span(date1:date,date2:date):number
  256. date_second_span(date1:date,date2:date):number
  257. date_compare_datetime(date1:date,date2:date):number
  258. date_compare_date(date1:date,date2:date):number
  259. date_compare_time(date1:date,date2:date):number
  260. date_date_of(:date):date
  261. date_time_of(:date):date
  262. date_datetime_string(:date):string
  263. date_date_string(:date):string
  264. date_time_string(:date):string
  265. date_days_in_month(:date):int
  266. date_days_in_year(:date):int
  267. date_leap_year(:date):bool
  268. date_is_today(:date):bool
  269. get_timer():number
  270. //}
  271. //{ gml.ext.GmString
  272. string_length(str:string)#:int
  273. string_byte_length(str:string)#:int
  274. string_pos(substr:string, str:string)#:int
  275. string_copy(str:string, index:nint, count:nint)#:string
  276. string_char_at(str:string, index:nint)#:string
  277. string_ord_at(str:string, index:nint)#:int
  278. string_byte_at(str:string, index:nint)#:int
  279. string_set_byte_at(str:string, index:nint, val:nint)#:string
  280. string_delete(str:string, index:nint, count:nint)#:string
  281. string_insert(substr:string, str:string, index:nint)#:string
  282. string_lower(str:string)#:string
  283. string_upper(str:string)#:string
  284. string_repeat(str:string, count:nint)#:string
  285. string_letters(str:string)#:string
  286. string_digits(str:string)#:string
  287. string_lettersdigits(str:string)#:string
  288. string_replace(str:string, substr:string, newstr:string)#:string
  289. string_replace_all(str:string, substr:string, newstr:string)#:string
  290. string_count(substr:string, str:string)#:int
  291. string_hash_to_newline(:string)#:string
  292. //}
  293. //{ gml.ds.Color
  294. typedef color = GmlColor;
  295. C#typedef color = Color;
  296. make_colour_rgb(red:number, green:number, blue:number)#:color
  297. make_color_rgb(red:number, green:number, blue:number)#:color
  298. make_colour_hsv(hue:number, saturation:number, value:number)#:color
  299. make_color_hsv(hue:number, saturation:number, value:number)#:color
  300. colour_get_red(:color)#:int
  301. color_get_red(:color)#:int
  302. colour_get_green(:color)#:int
  303. color_get_green(:color)#:int
  304. colour_get_blue(:color)#:int
  305. color_get_blue(:color)#:int
  306. colour_get_hue(:color)#:number
  307. color_get_hue(:color)#:number
  308. colour_get_saturation(:color)#:number
  309. color_get_saturation(:color)#:number
  310. colour_get_value(:color)#:number
  311. color_get_value(:color)#:number
  312. merge_colour(col1:color, col2:color, amount:number)#:color
  313. merge_color(col1:color, col2:color, amount:number)#:color
  314. //
  315. c_white:color;
  316. c_black:color;
  317. c_gray:color;
  318. c_grey:color;
  319. c_yellow:color;
  320. c_red:color;
  321. c_blue:color;
  322. c_lime:color;
  323. //}
  324. //{ Drawing - sprite
  325. draw_self()
  326. draw_sprite(q:sprite,subimg:number,x:number,y:number)
  327. draw_sprite_pos(q:sprite,subimg:number,x1:number,y1:number,x2:number,y2:number,x3:number,y3:number,x4:number,y4:number,alpha:number)
  328. draw_sprite_ext(q:sprite,subimg:number,x:number,y:number,xscale:number,yscale:number,rot:number,col:color,alpha:number)
  329. draw_sprite_part(q:sprite,subimg:number,left:number,top:number,width:number,height:number,x:number,y:number)
  330. draw_sprite_part_ext(q:sprite,subimg:number,left:number,top:number,width:number,height:number,x:number,y:number,xscale:number,yscale:number,col:color,alpha:number)
  331. //}
  332. //{ Drawing - state
  333. draw_set_colour(:color)
  334. draw_set_color(:color)
  335. draw_set_alpha(alpha:number)
  336. draw_get_colour():color
  337. draw_get_color():color
  338. draw_get_alpha():number
  339. draw_set_font(:font)
  340. draw_set_halign(halign:int)
  341. draw_set_valign(valign:int)
  342. string_width(:string):number
  343. string_height(:string):number
  344. string_width_ext(:string, sep:number, w:number):number
  345. string_height_ext(:string, sep:number, w:number):number
  346. //}
  347. //{ Drawing - texture state
  348. typedef tpe = GmlTextureEntry;
  349. typedef sprite = GmlSprite;
  350. sprite_get_uvs(spr:sprite, subimg:number):array<number>
  351. font_get_uvs(font:index):array<number>
  352. sprite_get_texture(spr:sprite, subimg:number):tpe
  353. font_get_texture(font:index):tpe
  354. texture_get_width(texid:tpe):number
  355. texture_get_height(texid:tpe):number
  356. //}
  357. //{ Sprite
  358. sprite_get_name(spr:sprite):string
  359. sprite_get_width(spr:sprite):int
  360. sprite_get_height(spr:sprite):int
  361. //}
  362. //{ Matrix
  363. matrix_multiply(a, b):
  364. matrix_transform_vertex(matrix, x, y, z):
  365. matrix_stack_top():
  366. matrix_stack_pop():
  367. //}
  368. //{
  369. vertex_format_end():
  370. //}
  371. //{ input
  372. keyboard_check(key:index):bool
  373. keyboard_check_pressed(key:index):bool
  374. keyboard_check_released(key:index):bool
  375. keyboard_check_direct(key:index):bool
  376. keyboard_clear(key:index)
  377. //
  378. mouse_check_button(button:index):bool
  379. mouse_check_button_pressed(button:index):bool
  380. mouse_check_button_released(button:index):bool
  381. mouse_wheel_up():bool
  382. mouse_wheel_down():bool
  383. //
  384. gamepad_button_count(device:index):int
  385. gamepad_button_check(device:index, buttonIndex:index):bool
  386. gamepad_button_check_pressed(device:index, buttonIndex:index):bool
  387. gamepad_button_check_released(device:index, buttonIndex:index):bool
  388. gamepad_button_value(device:index, buttonIndex:index):number
  389. gamepad_axis_count(axis:index):int
  390. gamepad_axis_value(device:index, axisIndex:index):number
  391. //
  392. device_mouse_check_button(:index,:index):bool
  393. device_mouse_check_button_pressed(:index,:index):bool
  394. device_mouse_check_button_released(:index,:index):bool
  395. device_mouse_x(:index):number
  396. device_mouse_y(:index):number
  397. device_mouse_raw_x(:index):number
  398. device_mouse_raw_y(:index):number
  399. device_mouse_x_to_gui(:index):number
  400. device_mouse_y_to_gui(:index):number
  401. //
  402. os_is_paused():bool
  403. //}
  404.  
  405. //{
  406. buffer_tell(:buffer):
  407. buffer_peek(:buffer, offset:int, type:index):
  408. buffer_md5(:buffer, offset:int, size:int):
  409. buffer_sha1(:buffer, offset:int, size:int):
  410. buffer_base64_encode(:buffer, offset:int, size:int):
  411. buffer_base64_decode(:string):
  412. buffer_base64_decode_ext(:buffer, :string, offset:int):
  413. buffer_sizeof(type:index):
  414. //}
  415.  
  416. //{ audio
  417. audio_play_sound(soundid:index,priority:number,loops:bool):
  418. audio_play_sound_on(em:index,soundid:index,priority:number,loops:bool):
  419. audio_play_sound_at(soundid:index,x:number,y:number,z:number, falloff_ref_dist:number,falloff_max_dist:number,falloff_factor:number,loops:bool, priority:number):
  420. audio_sound_length(sound:index):
  421. audio_play_in_sync_group(sync:index, snd:index):
  422. audio_group_name(group:index):
  423. audio_start_recording(rec:number):
  424. //}
  425.  
  426. //{ misc
  427. timeline_add()!:
  428. timeline_max_moment(:index):
  429. //
  430. sprite_duplicate(:index):
  431. sprite_add(fname:string,imgnumb:int,removeback:bool,smooth:bool,xorig:number,yorig:number)!:
  432. sprite_create_from_surface(:index,x:number,y:number,w:number,h:number,removeback:bool,smooth:bool,xorig:number,yorig:number)!:
  433. sprite_add_from_surface(ind:index,id:index,x:number,y:number,w:number,h:number,removeback:bool,smooth:bool)!:
  434. //
  435. font_add(:string,:number,:bool,:bool,:int,:int)!:
  436. font_add_sprite(spr:index,first:int,prop:bool,sep:number)!:
  437. font_add_sprite_ext(spr:index,:string,:bool,:number)!:
  438. //
  439. path_add()!:
  440. path_duplicate(:index)!:
  441. //
  442. room_add()!:
  443. room_duplicate(:index)!:
  444. room_instance_add(:index,:number,:number,:index):
  445. //
  446. shader_current():
  447. shaders_are_supported():
  448.  
  449. //}
  450.  
  451. //{ file_text and co
  452. file_text_open_from_string(:string):
  453. file_text_open_write(:string):
  454. file_text_open_append(:string):
  455. file_text_eof(:index):
  456. file_text_eoln(:index):
  457. //
  458. file_bin_open(:string,mode):
  459. file_bin_position(:index):
  460. //
  461. file_attributes(:string,:int):
  462. //
  463. filename_name(:string):
  464. filename_path(:string):
  465. filename_dir(:string):
  466. filename_drive(:string):
  467. filename_ext(:string):
  468. filename_change_ext(:string,:string):
  469. //
  470. ini_close():string
  471. //}
  472.  
  473. //{ gml.assets.Object
  474. typedef object = GmlObject;
  475. typedef objectID = GmlObjectID;
  476. object_get_name<T>(o:object<T>):string
  477. object_get_sprite(o):sprite;
  478. object_get_index<T>(o:object<T>)+:int
  479. object_from_index(i:int)+:object<inst>
  480. //}
  481.  
  482. //{ gml.ds.ArrayList
  483. typedef list = ArrayList;
  484. C#typedef list = GmlArrayList;
  485. ds_list_create<T>():list<T>
  486. ds_list_destroy<T>(:list<T>)
  487. ds_list_clear<T>(:list<T>)
  488. ds_list_copy<T>(:list<T>,source:list<T>)
  489. ds_list_size<T>(:list<T>):int
  490. ds_list_empty<T>(:list<T>):bool
  491. ds_list_add<T>(:list<T>,...:T)
  492. ds_list_insert<T>(:list<T>,pos:nint,value:T)
  493. ds_list_replace<T>(:list<T>,pos:nint,value:T)
  494. ds_list_delete<T>(:list<T>,pos:nint)
  495. ds_list_find_index<T>(:list<T>,value:T):int
  496. ds_list_find_value<T>(:list<T>,pos:nint):T
  497. ds_list_mark_as_list<T>(:list<T>,pos:nint)
  498. ds_list_mark_as_map<T>(:list<T>,pos:nint)
  499. ds_list_sort<T>(:list<T>,ascending:bool)
  500. ds_list_shuffle<T>(:list<T>)
  501. ds_list_write<T>(:list<T>):string
  502. ds_list_read<T>(:list<T>,:string,?legacy:bool)
  503. ds_list_set<T>(:list<T>,pos:nint,value:T)
  504. //}
  505.  
  506. //{ gml.ds.HashTable
  507. typedef map = Map;
  508. c#typedef map = GmlMap;
  509. ds_map_create<K;V>():map<K;V>
  510. ds_map_destroy<K;V>(:map<K;V>)
  511. ds_map_clear<K;V>(:map<K;V>)
  512. ds_map_copy<K;V>(:map<K;V>,:map<K;V>)
  513. ds_map_size<K;V>():int
  514. ds_map_empty<K;V>(:map<K;V>):bool
  515. ds_map_add<K;V>(:map<K;V>,:K,:V)
  516. ds_map_add_list<K;V>(:map<K;V>,:K,value)
  517. ds_map_add_map<K;V>(:map<K;V>,:K,value)
  518. ds_map_replace<K;V>(:map<K;V>,:K,value)
  519. ds_map_replace_map<K;V>(:map<K;V>,:K,value)
  520. ds_map_replace_list<K;V>(:map<K;V>,:K,value)
  521. ds_map_delete<K;V>(:map<K;V>,:K)
  522. ds_map_exists<K;V>(:map<K;V>,:K):bool
  523. ds_map_find_value<K;V>(:map<K;V>,:K):V
  524. ds_map_find_previous<K;V>(:map<K;V>,:K):K
  525. ds_map_find_next<K;V>(:map<K;V>,:K):K
  526. ds_map_find_first<K;V>(:map<K;V>):K
  527. ds_map_find_last<K;V>(:map<K;V>):K
  528. ds_map_write<K;V>(:map<K;V>):string
  529. ds_map_read<K;V>(:map<K;V>,:string,?legacy:bool)
  530. ds_map_secure_load<K;V>(path:string):map<K;V>
  531. ds_map_secure_save<K;V>(:map<K;V>, path:string)
  532. ds_map_secure_load_buffer(:buffer):map<K;V>
  533. ds_map_secure_save_buffer<K;V>(:map<K;V>,:buffer)
  534. ds_map_set<K;V>(:map<K;V>,:K,:V)
  535. //}
  536.  
  537. //{ Queue
  538. typedef queue = Queue
  539. C#typedef queue = GmlQueue
  540. ds_queue_create<T>():queue<T>
  541. ds_queue_destroy<T>(:queue<T>)
  542. ds_queue_empty<T>(:queue<T>):bool
  543. ds_queue_size<T>(:queue<T>):int
  544. ds_queue_enqueue<T>(:queue<T>, ...:T)
  545. ds_queue_dequeue<T>(:queue<T>):T
  546. ds_queue_tail<T>(:queue<T>):T
  547. ds_queue_head<T>(:queue<T>):T
  548. ds_queue_read<T>(:queue<T>,:string,?legacy)
  549. //}
  550.  
  551. //{ misc ds
  552. ds_exists(ind, type):bool
  553. //
  554. ds_stack_top(:index):
  555. ds_stack_write(:index):
  556. ds_stack_read(:index,:string,?legacy)
  557. //
  558. //
  559. ds_priority_empty(:index):
  560. ds_priority_delete_min(:index):
  561. ds_priority_delete_max(:index):
  562. ds_priority_find_min(:index):
  563. ds_priority_find_max(:index):
  564. ds_priority_write(:index):
  565. ds_priority_read(:index,:string,?legacy)
  566. //
  567. ds_grid_width(:index):
  568. ds_grid_height(:index):
  569. ds_grid_value_x(:index,x1:number,y1:number,x2:number,y2:number,val):
  570. ds_grid_value_y(:index,x1:number,y1:number,x2:number,y2:number,val):
  571. ds_grid_value_disk_x(:index,xm:number,ym:number,r:number,val):
  572. ds_grid_value_disk_y(:index,xm:number,ym:number,r:number,val):
  573. ds_grid_write(:index):
  574. ds_grid_read(:index,:string,?legacy)
  575. //}
  576.  
  577. //{ particles
  578. part_system_create():GmlParticleSystem;
  579. part_type_create():GmlParticleType;
  580. //}
  581.  
  582. //{ gml.io.Buffer
  583. typedef buffer = Buffer;
  584. buffer_create(size:int, buffer_type:int, alignment:int):buffer
  585. buffer_write(:buffer, type:int, value)
  586. buffer_read(:buffer, type:int)
  587. buffer_seek(:buffer, base:int, offset:nint)
  588. buffer_get_surface(:buffer, :surface, mode:int, offset:int, modulo:int)
  589. buffer_set_surface(:buffer, :surface, mode:int, offset:int, modulo:int)
  590. buffer_delete(:buffer)
  591. buffer_exists(:buffer):bool
  592. buffer_get_type(:buffer):int
  593. buffer_get_alignment(:buffer):int
  594. buffer_poke(:buffer, offset:int, type:int, value)
  595. buffer_peek(:buffer, offset:int, type:int)
  596. buffer_save(:buffer, filename:string)
  597. buffer_save_ext(:buffer, filename:string, offset:int, size:int)
  598. buffer_load(filename:string)
  599. buffer_load_ext(:buffer, filename:string, offset:int)
  600. buffer_load_partial(:buffer, filename:string, src_offset:int, src_len:int, dest_offset:int)
  601. buffer_copy(src_buffer, src_offset:int, size:int, dest:buffer, dest_offset:int)
  602. buffer_fill(:buffer, offset:int, type:int, value, size:int)
  603. buffer_get_size(:buffer):int
  604. buffer_tell(:buffer):int
  605. buffer_resize(:buffer, newsize:int)
  606. buffer_md5(:buffer, offset:int, size:int):string
  607. buffer_sha1(:buffer, offset:int, size:int):string
  608. buffer_base64_encode(:buffer, offset:int, size:int):string
  609. buffer_base64_decode(string):buffer
  610. buffer_base64_decode_ext(:buffer, :string, offset:int)
  611. buffer_sizeof(type:int):int
  612. buffer_get_address(:buffer)
  613. buffer_create_from_vertex_buffer(:vertex_buffer, type, alignment)
  614. buffer_create_from_vertex_buffer_ext(:vertex_buffer, type, alignment, start_vertex, num_vertices)
  615. buffer_copy_from_vertex_buffer(vertex_buffer, start_vertex, num_vertices, dest_buffer, dest_offset)
  616. buffer_async_group_begin(groupname)
  617. buffer_async_group_option(optionname,optionvalue)
  618. buffer_async_group_end()
  619. buffer_load_async(:buffer,filename:string,offset:int,size:int)
  620. buffer_save_async(:buffer,filename:string,offset:int,size:int)
  621. //}
  622.  
  623. //{ gml.net.GmSocket
  624. typedef socket = GmSocket;
  625. network_create_socket(type:int):socket
  626. network_create_socket_ext(type:int, port:int):socket
  627. network_create_server(type:int, port:int, maxclients:int):socket
  628. network_create_server_raw(type:int, port:int, maxclients:int):socket
  629. network_connect(:socket, url:string, port:int):int
  630. network_connect_raw(:socket, url:string, port:int):socket
  631. network_send_packet(:socket, :buffer, size:int):int
  632. network_send_raw(:socket, :buffer, size:int):int
  633. network_send_broadcast(:socket, port:int, :buffer, size:int):int
  634. network_send_udp(:socket, URL:string, port:int, data:buffer, size:int):int
  635. network_send_udp_raw(:socket, URL:string, port:int, data:buffer, size:int):int
  636. network_set_timeout(:socket, read:number, write:number)
  637. network_set_config(parameter, value)
  638. network_resolve(url:string):string
  639. network_destroy(:socket)
  640. //}
  641.  
  642. //{ gml.ext.GmFormats
  643. json_encode(:map<string;any>):string
  644. json_decode(:string):map<string,any>
  645. load_csv(:string):array2d<string>
  646. base64_encode(:string):string
  647. base64_decode(:string):string
  648. md5_string_unicode(:string):string
  649. md5_string_utf8(:string):string
  650. md5_file(:string):string
  651. sha1_string_unicode(:string):string
  652. sha1_string_utf8(:string):string
  653. sha1_file(:string):string
  654. //
  655. http_post_string(:string,:string):
  656. http_request(url:string, method, header_map, body):
  657. //}
  658.  
  659. //{ GmScripts
  660. typedef script = Script;
  661. script_get_name(:script):string;
  662. ::script_execute(script:script, ...)~
  663. //}
  664. gml_pragma(...)~
  665.  
  666. //{ misc system
  667. window_handle():
  668. window_device():
  669. window_has_focus():
  670. //
  671. clipboard_has_text():
  672. display_reset(aa, vsync):
  673. //
  674. parameter_count():
  675. parameter_string(:index):
  676. //
  677. show_question(str:string):
  678. show_question_async(:string):
  679. get_integer(:string,:number):
  680. get_integer_async(:string,:number):
  681. get_string(:string,:string):
  682. get_string_async(:string,:string):
  683. get_login_async(:string,:string):
  684. get_open_filename(:string,:string):
  685. get_save_filename(:string,:string):
  686. get_open_filename_ext(:string,:string,:string,:string):
  687. get_save_filename_ext(:string,:string,:string,:string):
  688. //
  689. highscore_name(:index):
  690. highscore_value(:index):
  691. //
  692. clickable_add(x,y,spritetpe,URL,target,params):
  693. clickable_add_ext(x,y,spritetpe,URL,target,params,scale,alpha):
  694. //}
  695.  
  696. //{ steam
  697. steam_initialised():
  698. steam_file_persisted(:string):
  699. steam_file_write(:string, data, :number):
  700. steam_file_write_file(:string, :string):
  701. steam_user_owns_dlc(_id):
  702. steam_user_installed_dlc(_id):
  703. steam_upload_score(:string, :number):
  704. steam_upload_score_ext(:string, :number, :bool):
  705. steam_download_scores_around_user(lb_name,range_start,range_end):
  706. steam_download_scores(lb_name,start_idx,end_idx):
  707. steam_download_friends_scores(lb_name):
  708. steam_upload_score_buffer(lb_name, score, buffer_id):
  709. steam_upload_score_buffer_ext(lb_name, score, buffer_id, forceupdate):
  710. steam_current_game_language():
  711. steam_available_languages():
  712. steam_ugc_download(ugc_handle, dest_filename):
  713. steam_ugc_submit_item_update(ugc_update_handle, change_note):
  714. steam_ugc_subscribe_item(published_file_id):
  715. steam_ugc_unsubscribe_item(published_file_id):
  716. steam_ugc_num_subscribed_items():
  717. steam_ugc_request_item_details(published_file_id, max_age_seconds):
  718. steam_ugc_query_set_cloud_filename_filter(ugc_query_handle , match_cloud_filename):
  719. ugc_query_CreatedByFollowedUsersRankedByPublicationDate#
  720. //}
  721.  
  722. // Mishaps:
  723. font_replace(...)&
  724. bm_complex&
  725. ge_lose&
  726. phy_particle_flag_colormixing&
  727. phy_particle_data_flag_color&
  728. buffer_generalerror&
  729. buffer_outofspace&
  730. buffer_outofbounds&
  731. buffer_invalidtype&
  732. vertex_usage_color&
  733. vertex_type_color&
  734.  
  735. //{
  736. x@
  737. y@
  738. xprevious@
  739. yprevious@
  740. xstart@
  741. ystart@
  742. hspeed@
  743. vspeed@
  744. direction@
  745. speed@
  746. friction@
  747. visible@
  748. //
  749. sprite_index@
  750. sprite_width@
  751. sprite_height@
  752. sprite_xoffset@
  753. sprite_yoffset@
  754. image_number@
  755. image_index@
  756. image_speed@
  757. depth@
  758. image_xscale@
  759. image_yscale@
  760. image_angle@
  761. image_alpha@
  762. image_blend@
  763. bbox_left@
  764. bbox_right@
  765. bbox_top@
  766. bbox_bottom@
  767. //
  768. path_index*@
  769. path_position@
  770. path_positionprevious@
  771. path_speed@
  772. path_scale@
  773. path_orientation@
  774. path_endaction@
  775. //
  776. object_index*@
  777. id*@
  778. solid@
  779. persistent@
  780. mask_index@
  781. //
  782. timeline_index@
  783. timeline_position@
  784. timeline_speed@
  785. timeline_running@
  786. timeline_loop@
  787. //
  788. phy_rotation@
  789. phy_position_x@
  790. phy_position_y@
  791. phy_angular_velocity@
  792. phy_linear_velocity_x@
  793. phy_linear_velocity_y@
  794. phy_speed_x@
  795. phy_speed_y@
  796. phy_speed*@
  797. phy_angular_damping@
  798. phy_linear_damping@
  799. phy_bullet@
  800. phy_fixed_rotation@
  801. phy_active@
  802. phy_mass*@
  803. phy_inertia*@
  804. phy_com_x*@
  805. phy_com_y*@
  806. phy_dynamic*@
  807. phy_kinematic*@
  808. phy_sleeping*@
  809. phy_collision_points*@
  810. phy_collision_x*@
  811. phy_collision_y*@
  812. phy_col_normal_x*@
  813. phy_col_normal_y*@
  814. phy_position_xprevious*@
  815. phy_position_yprevious*@
  816. //}
  817.  
Add Comment
Please, Sign In to add comment