@@ -515,6 +515,93 @@ else
515515
516516//Reset the message
517517alarm[3] = 60
518+ </string >
519+ </argument >
520+ </arguments >
521+ </action >
522+ </event >
523+ <event eventtype =" 7" enumb =" 13" >
524+ <action >
525+ <libid >1</libid >
526+ <id >603</id >
527+ <kind >7</kind >
528+ <userelative >0</userelative >
529+ <isquestion >0</isquestion >
530+ <useapplyto >-1</useapplyto >
531+ <exetype >2</exetype >
532+ <functionname ></functionname >
533+ <codestring ></codestring >
534+ <whoName >self</whoName >
535+ <relative >0</relative >
536+ <isnot >0</isnot >
537+ <arguments >
538+ <argument >
539+ <kind >1</kind >
540+ <string >///Delete on screen controls
541+ for(var i = 0; i < array_length_1d(mobile_keys); i++)
542+ virtual_key_delete(mobile_keys[i])
543+ </string >
544+ </argument >
545+ </arguments >
546+ </action >
547+ </event >
548+ <event eventtype =" 7" enumb =" 12" >
549+ <action >
550+ <libid >1</libid >
551+ <id >603</id >
552+ <kind >7</kind >
553+ <userelative >0</userelative >
554+ <isquestion >0</isquestion >
555+ <useapplyto >-1</useapplyto >
556+ <exetype >2</exetype >
557+ <functionname ></functionname >
558+ <codestring ></codestring >
559+ <whoName >self</whoName >
560+ <relative >0</relative >
561+ <isnot >0</isnot >
562+ <arguments >
563+ <argument >
564+ <kind >1</kind >
565+ <string >///Set up on screen controls
566+
567+ //Temporary variable
568+ var s
569+
570+ //Normal
571+ if filter = 0
572+ s = 1
573+
574+ //HQ2X
575+ else if filter = 1
576+ s = 2
577+
578+ //HQ4X
579+ else if filter = 2
580+ s = 4
581+
582+ //Up
583+ mobile_keys[0] = virtual_key_add(34*s,118*s,32*s,32*s,vk_up)
584+
585+ //Down
586+ mobile_keys[1] = virtual_key_add(34*s,182*s,32*s,32*s,vk_down)
587+
588+ //Left
589+ mobile_keys[2] = virtual_key_add(2*s,150*s,32*s,32*s,vk_left)
590+
591+ //Right
592+ mobile_keys[3] = virtual_key_add(66*s,150*s,32*s,32*s,vk_right)
593+
594+ //Jump
595+ mobile_keys[4] = virtual_key_add(350*s,150*s,32*s,32*s,vk_shift)
596+
597+ //Run
598+ mobile_keys[5] = virtual_key_add(310*s,150*s,32*s,32*s,vk_control)
599+
600+ //Pause
601+ mobile_keys[6] = virtual_key_add(350*s,2*s,32*s,32*s,vk_enter)
602+
603+ //Inventory
604+ mobile_keys[7] = virtual_key_add(2*s,2*s,32*s,32*s,vk_space)
518605</string >
519606 </argument >
520607 </arguments >
@@ -565,6 +652,13 @@ display_set_gui_size(view_wview[0]*s,view_hview[0]*s)
565652
566653//Center the window
567654alarm[2] = 1
655+
656+ //Reset mobile controls
657+ if os_type = os_android or os_type = os_ios
658+ {
659+ event_user(3)
660+ event_user(2)
661+ }
568662</string >
569663 </argument >
570664 </arguments >
@@ -666,6 +760,10 @@ alarm[1] = 1
666760 <string >///Fade the screen to black, unless you just opened up the game
667761if mode = 1
668762 event_user(0)
763+
764+ //Set up on screen controls
765+ if os_type = os_android or os_type = os_ios
766+ event_user(2)
669767</string >
670768 </argument >
671769 </arguments >
@@ -891,6 +989,56 @@ if showfps
891989 draw_text(view_xview[0]+view_wview[0]-2,view_yview[0]+206,"FPS: "+string(fps)+" MAX FPS: "+string(fps_real))
892990 draw_set_halign(fa_left)
893991}
992+
993+ //Draw on screen controls
994+ if (os_type = os_android or os_type = os_ios)
995+ and (instance_exists(obj_levelmanager) or instance_exists(obj_mapmario) or instance_exists(obj_titlescreen))
996+ {
997+
998+ //Set the font
999+ draw_set_font(global.font)
1000+
1001+ //Center the text
1002+ draw_set_halign(fa_center)
1003+
1004+ //Set the aplha
1005+ draw_set_alpha(0.6)
1006+
1007+ //Up
1008+ draw_rectangle(view_xview[0]+34,view_yview[0]+118,view_xview[0]+34+31,view_yview[0]+118+31,0)
1009+
1010+ //Down
1011+ draw_rectangle(view_xview[0]+34,view_yview[0]+182,view_xview[0]+34+31,view_yview[0]+182+31,0)
1012+
1013+ //Left
1014+ draw_rectangle(view_xview[0]+2,view_yview[0]+150,view_xview[0]+2+31,view_yview[0]+150+31,0)
1015+
1016+ //Right
1017+ draw_rectangle(view_xview[0]+66,view_yview[0]+150,view_xview[0]+66+31,view_yview[0]+150+31,0)
1018+
1019+ //Jump
1020+ draw_rectangle(view_xview[0]+350,view_yview[0]+150,view_xview[0]+350+31,view_yview[0]+150+31,0)
1021+ draw_text(view_xview[0]+350+15,view_yview[0]+150+12,"A")
1022+
1023+ //Run
1024+ draw_rectangle(view_xview[0]+310,view_yview[0]+150,view_xview[0]+310+31,view_yview[0]+150+31,0)
1025+ draw_text(view_xview[0]+310+15,view_yview[0]+150+12,"B")
1026+
1027+ //Pause
1028+ draw_rectangle(view_xview[0]+350,view_yview[0]+2,view_xview[0]+350+31,view_yview[0]+2+31,0)
1029+ draw_text(view_xview[0]+350+15,view_yview[0]+2+12,"+")
1030+
1031+ //Inventory
1032+ draw_rectangle(view_xview[0]+2,view_yview[0]+2,view_xview[0]+2+31,view_yview[0]+2+31,0)
1033+ draw_text(view_xview[0]+2+15,view_yview[0]+2+12,"-")
1034+
1035+ //Reset text alignment
1036+ draw_set_halign(fa_left)
1037+
1038+ //Reset alpha
1039+ draw_set_alpha(1)
1040+
1041+ }
8941042</string >
8951043 </argument >
8961044 </arguments >
0 commit comments