Guest User

fragile_allegiance_scripts2.ahk

a guest
Nov 6th, 2025
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.98 KB | None | 0 0
  1. ;autohotkey script for a keyboard interface emulation in Fragile Allegiance
  2. ;works in DosBOX, fullscreen or windowed (possibly coordinates might have to be adjusted)
  3.  
  4. SetMouseDelay 8
  5.  
  6. ;---------CONFIG
  7.  
  8. ;---------FUNCTIONS
  9.  
  10. ; move cursor to pixel position, absolute value
  11. absMove(x,y)
  12. {
  13. MouseMove, -1640, -1480, 0, R
  14. MouseMove, -100, -100, 0, R
  15. MouseMove, x, y, 0, R
  16. }
  17.  
  18. rMove(x,y)
  19. {
  20. MouseMove, x, y, 0, R
  21. }
  22.  
  23. ;when pointing on tile, move to building menu
  24. toBuildMenu()
  25. {
  26. absMove(575,220)
  27. Click
  28. Sleep 450
  29. }
  30.  
  31. fromBuildMenu()
  32. {
  33. absMove(540, 440)
  34. Click
  35. }
  36.  
  37. toNextBuildScreen()
  38. {
  39. absMove(400,455)
  40. Click
  41. }
  42.  
  43. buildItem(posX, posY, itemX, itemY, howMany, lastItem)
  44. {
  45. ;select item
  46. absMove(65 + itemX * 100, 150 + itemY * 105)
  47. Click
  48.  
  49. ;go out of build menu
  50. absMove(540, 440)
  51. Click
  52. Sleep 450
  53.  
  54. absMove(posX, posY)
  55. loop, 25 ; max 25 items
  56. {
  57. if howMany < 1
  58. break
  59.  
  60. howMany--
  61.  
  62. Click
  63. Sleep 20
  64. }
  65. if lastItem = 0
  66. toBuildMenu()
  67. }
  68.  
  69. midBuildItem(itemX, itemY, howMany, lastItem)
  70. {
  71. buildItem(310, 300, itemX, itemY, howMany, lastItem)
  72. }
  73.  
  74. lowBuildItem(itemX, itemY, howMany, lastItem)
  75. {
  76. buildItem(310, 430, itemX, itemY, howMany, lastItem)
  77. }
  78.  
  79. leftBuildItem(itemX, itemY, howMany, lastItem)
  80. {
  81. buildItem(100, 300, itemX, itemY, howMany, lastItem)
  82. }
  83.  
  84. ;build up a colony
  85. ^a::
  86. toBuildMenu() ; start in Misc screen
  87.  
  88. lowBuildItem(2, 2, 1, 0) ;Asteroid Engine
  89. lowBuildItem(1, 2, 1, 0) ;Repair
  90. ;lowBuildItem(0, 2, 1, 0) ;Gravity nullifier
  91. lowBuildItem(2, 1, 1, 0) ;Refuelling depot
  92.  
  93. toNextBuildScreen() ; Personell screen
  94. midBuildItem(0,0,2,0) ;Living quarters
  95. midBuildItem(2,0,1,0) ; Medical
  96. midBuildItem(0,1,2,0) ; Pleasure domes
  97. midBuildItem(1,1,4,0) ; security centres
  98.  
  99. toNextBuildScreen() ; Environment screen
  100. midBuildItem(0,0,2,0) ; radiation filters
  101. midBuildItem(1,0,2,0) ; air processors
  102. midBuildItem(2,0,4,0) ; environment controls
  103. midBuildItem(0,1,2,0) ; hydroponics
  104. midBuildItem(1,1,2,0) ; hydration plants
  105.  
  106. toNextBuildScreen() ; Power screen
  107. midBuildItem(0,0,1,0) ; power store
  108. midBuildItem(1,0,25,0) ; solar panels
  109.  
  110. toNextBuildScreen() ; mining
  111. leftBuildItem(1,0,5,0) ; mines
  112. leftBuildItem(2,0,4,0) ; deep mines
  113. leftBuildItem(0,2,1,0) ; seismic pen.
  114. midBuildItem(1,1,5,0) ; p. Storage towers
  115. lowBuildItem(2,1,1,0) ; ore teleporter
  116.  
  117. toNextBuildScreen() ; weapons
  118. midBuildItem(0,1,10,0) ; anti missile
  119. midBuildItem(0,2,15,0) ; photon
  120.  
  121. toNextBuildScreen() ; Misc
  122. toNextBuildScreen() ; personell
  123. toNextBuildScreen() ; environment
  124. toNextBuildScreen() ; power
  125. midBuildItem(1,0,25,0) ; more solar panels
  126. midBuildItem(1,0,25,0) ; more solar panels
  127.  
  128. toNextBuildScreen() ; mining
  129. toNextBuildScreen() ; weapons
  130. toNextBuildScreen() ; misc
  131. fromBuildMenu()
  132.  
  133. return
  134.  
  135. ;to/from planet screen
  136. `::
  137. absMove(630,110)
  138. MouseMove,30,0,0,R
  139. Click
  140. absMove(320, 240)
  141.  
  142. return
  143.  
  144.  
Advertisement
Add Comment
Please, Sign In to add comment