项目作者: manfredmann

项目描述 :
Sokoban for QNX4.25/Photon
高级语言: C++
项目地址: git://github.com/manfredmann/PtSoko.git
创建时间: 2019-09-07T11:22:48Z
项目社区:https://github.com/manfredmann/PtSoko

开源协议:GNU General Public License v3.0

下载


Sokoban for QNX4.25/Photon

Захотелось мне как-то поиграть в сокобан под QNX’ом (что уже само по себе странно), и я с удвилением обнаружил, что его нет.

Инструкция по сборке

Соберём библиотеку разбора параметров командной строки

  1. # ./buildq4o.sh
  2. cc -5r -ms -Wc,-s -WC,-xss -Oentx -I./inc -c -o obj/re.o src/re.cpp
  3. /usr/watcom/10.6/bin/wpp386 -zq -oentx -i=./inc -ms -fo=obj/re.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/re.cpp
  4. cc -5r -ms -Wc,-s -WC,-xss -Oentx -I./inc -c -o obj/optparam.o src/optparam.cpp
  5. /usr/watcom/10.6/bin/wpp386 -zq -oentx -i=./inc -ms -fo=obj/optparam.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/optparam.cpp
  6. cc -5r -ms -Wc,-s -WC,-xss -Oentx -I./inc -c -o obj/optparser.o src/optparser.cpp
  7. /usr/watcom/10.6/bin/wpp386 -zq -oentx -i=./inc -ms -fo=obj/optparser.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/optparser.cpp
  8. wlib -b -c bin/qnx4opts.a obj/re.o obj/optparam.o obj/optparser.o
  9. WATCOM Library Manager Version 10.6
  10. Copyright by WATCOM International Corp. 1988, 1996. All rights reserved.
  11. WATCOM is a trademark of WATCOM International Corp.
  12. Warning! Could not open library 'bin/qnx4opts.a' : will be created.

Соберём саму игру

  1. # make -f Makefile.game
  2. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/debug.o src/debug.cpp
  3. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/debug.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/debug.cpp
  4. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/palette.o src/palette.cpp
  5. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/palette.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/palette.cpp
  6. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/level.o src/level.cpp
  7. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/level.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/level.cpp
  8. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/help.o src/help.cpp
  9. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/help.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/help.cpp
  10. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/level_preview.o src/level_preview.cpp
  11. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/level_preview.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/level_preview.cpp
  12. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/level_background.o src/level_background.cpp
  13. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/level_background.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/level_background.cpp
  14. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/box.o src/box.cpp
  15. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/box.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/box.cpp
  16. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/box_place.o src/box_place.cpp
  17. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/box_place.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/box_place.cpp
  18. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/object.o src/object.cpp
  19. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/object.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/object.cpp
  20. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/brick.o src/brick.cpp
  21. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/brick.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/brick.cpp
  22. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/player.o src/player.cpp
  23. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/player.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/player.cpp
  24. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/game.o src/game.cpp
  25. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/game.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/game.cpp
  26. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/timer.o src/timer.cpp
  27. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/timer.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/timer.cpp
  28. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/menu.o src/menu.cpp
  29. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/menu.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/menu.cpp
  30. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/resources.o src/resources.cpp
  31. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/resources.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/resources.cpp
  32. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/respack.o src/respack.cpp
  33. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/respack.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/respack.cpp
  34. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/main_game.o src/main_game.cpp
  35. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/main_game.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/main_game.cpp
  36. cc -M -N 64k -lphoton -l/qnx4/phtk/lib/phrender_s.lib -l/qnx4/phtk/lib/phexlib3r.lib -llib/qnx4opts/bin/qnx4opts.a -o bin/PtSoko obj/debug.o obj/palette.o obj/level.o obj/help.o obj/level_preview.o obj/level_background.o obj/box.o obj/box_place.o obj/object.o obj/brick.o obj/player.o obj/game.o obj/timer.o obj/menu.o obj/resources.o obj/respack.o obj/main_game.o
  37. /usr/watcom/10.6/bin/wlink op quiet form qnx flat na bin/PtSoko op static op map=bin/PtSoko.map op priv=3 op c libp /usr/watcom/10.6/usr/lib:/usr/lib:. l /usr/lib/photon3r.lib l /qnx4/phtk/lib/phrender_s.lib l /qnx4/phtk/lib/phexlib3r.lib l lib/qnx4opts/bin/qnx4opts.a f obj/debug.o f obj/palette.o f obj/level.o f obj/help.o f obj/level_preview.o f obj/level_background.o f obj/box.o f obj/box_place.o f obj/object.o f obj/brick.o f obj/player.o f obj/game.o f obj/timer.o f obj/menu.o f obj/resources.o f obj/respack.o f obj/main_game.o op offset=388k op st=64k
  38. Warning(1027): file obj/level_background.o(/root/projects/PtSoko/src/level_background.cpp): redefinition of _PxImageFunc ignored
  39. Warning(1027): file obj/box.o(/root/projects/PtSoko/src/box.cpp): redefinition of _PxImageFunc ignored
  40. Warning(1027): file obj/box_place.o(/root/projects/PtSoko/src/box_place.cpp): redefinition of _PxImageFunc ignored
  41. Warning(1027): file obj/object.o(/root/projects/PtSoko/src/object.cpp): redefinition of _PxImageFunc ignored
  42. Warning(1027): file obj/brick.o(/root/projects/PtSoko/src/brick.cpp): redefinition of _PxImageFunc ignored
  43. Warning(1027): file obj/player.o(/root/projects/PtSoko/src/player.cpp): redefinition of _PxImageFunc ignored
  44. Warning(1027): file obj/game.o(/root/projects/PtSoko/src/game.cpp): redefinition of _PxImageFunc ignored
  45. Warning(1027): file obj/resources.o(/root/projects/PtSoko/src/resources.cpp): redefinition of _PxImageFunc ignored
  46. Warning(1027): file obj/main_game.o(/root/projects/PtSoko/src/main_game.cpp): redefinition of _PxImageFunc ignored

Соберём упаковщик/распаковщик ресурсов

  1. # make -f Makefile.packer
  2. cc -Oentx -ms -s -w1 -5r, -WC,-xss -I./inc -I./lib/qnx4opts/inc -c -o obj/main_packer.o src/main_packer.cpp
  3. /usr/watcom/10.6/bin/wpp386 -zq -oentx -w1 -i=./inc -i=./lib/qnx4opts/inc -ms -fo=obj/main_packer.o -xss -5r -i=/usr/watcom/10.6/usr/include -i=/usr/include -i=/usr/include/clk -i=/usr/include/clk/stl src/main_packer.cpp
  4. cc -M -N 64k -lphoton -llib/qnx4opts/bin/qnx4opts.a -o bin/PtSokoPacker obj/debug.o obj/help.o obj/respack.o obj/main_packer.o
  5. /usr/watcom/10.6/bin/wlink op quiet form qnx flat na bin/PtSokoPacker op static op map=bin/PtSokoPacker.map op priv=3 op c libp /usr/watcom/10.6/usr/lib:/usr/lib:. l /usr/lib/photon3r.lib l lib/qnx4opts/bin/qnx4opts.a f obj/debug.o f obj/help.o f obj/respack.o f obj/main_packer.o op offset=72k op st=64k

Упакуем ресурсы

  1. # bin/PtSokoPacker -p res/.ptsoko res/res.pack
  2. Packing...
  3. Scanning 'res/.ptsoko'
  4. Dir: levels
  5. File: levels/.placeholder
  6. File: levels/level01.lvl
  7. File: levels/level02.lvl
  8. File: levels/level03.lvl
  9. File: levels/level04.lvl
  10. File: levels/level05.lvl
  11. File: levels/level06.lvl
  12. File: levels/level07.lvl
  13. File: levels/level08.lvl
  14. File: levels/level09.lvl
  15. File: levels/level10.lvl
  16. File: levels/level11.lvl
  17. File: levels/level12.lvl
  18. File: levels/level13.lvl
  19. File: levels/level14.lvl
  20. File: levels/level15.lvl
  21. File: levels/level16.lvl
  22. File: levels/level17.lvl
  23. File: levels/level18.lvl
  24. File: levels/level19.lvl
  25. File: levels/level20.lvl
  26. File: levels/level21.lvl
  27. File: levels/level22.lvl
  28. File: levels/level23.lvl
  29. File: levels/level24.lvl
  30. File: levels/level25.lvl
  31. File: levels/level26.lvl
  32. File: levels/level27.lvl
  33. File: levels/level28.lvl
  34. File: levels/level29.lvl
  35. File: levels/level30.lvl
  36. File: levels/level31.lvl
  37. File: levels/level32.lvl
  38. File: levels/level33.lvl
  39. File: levels/level34.lvl
  40. File: levels/level35.lvl
  41. File: levels/level36.lvl
  42. File: levels/level37.lvl
  43. File: levels/level38.lvl
  44. File: levels/level39.lvl
  45. File: levels/level40.lvl
  46. File: levels/level41.lvl
  47. File: levels/level42.lvl
  48. File: levels/level43.lvl
  49. File: levels/level44.lvl
  50. File: levels/level45.lvl
  51. File: levels/level46.lvl
  52. File: levels/level47.lvl
  53. File: levels/level48.lvl
  54. File: levels/level49.lvl
  55. File: levels/level50.lvl
  56. File: levels/level51.lvl
  57. File: levels/level52.lvl
  58. File: levels/level53.lvl
  59. File: levels/level54.lvl
  60. File: levels/level55.lvl
  61. File: levels/level56.lvl
  62. File: levels/level57.lvl
  63. File: levels/level58.lvl
  64. File: levels/level59.lvl
  65. File: levels/level60.lvl
  66. File: levels/level61.lvl
  67. File: levels/level62.lvl
  68. File: levels/level63.lvl
  69. File: levels/level64.lvl
  70. File: levels/level65.lvl
  71. File: levels/level66.lvl
  72. File: levels/level67.lvl
  73. File: levels/level68.lvl
  74. File: levels/level69.lvl
  75. File: levels/level70.lvl
  76. File: levels/level71.lvl
  77. File: levels/level72.lvl
  78. File: levels/level73.lvl
  79. File: levels/level74.lvl
  80. File: levels/level75.lvl
  81. File: levels/level76.lvl
  82. File: levels/level77.lvl
  83. File: levels/level78.lvl
  84. File: levels/level79.lvl
  85. File: levels/level80.lvl
  86. File: levels/level81.lvl
  87. File: levels/level82.lvl
  88. File: levels/level83.lvl
  89. File: levels/level84.lvl
  90. File: levels/level85.lvl
  91. File: levels/level86.lvl
  92. File: levels/level87.lvl
  93. File: levels/level88.lvl
  94. File: levels/level89.lvl
  95. File: levels/level90.lvl
  96. Dir: stat
  97. File: stat/.placeholder
  98. Dir: textures
  99. File: textures/.placeholder
  100. File: textures/box_18.bmp
  101. File: textures/box_24.bmp
  102. File: textures/box_30.bmp
  103. File: textures/box_36.bmp
  104. File: textures/box_42.bmp
  105. File: textures/box_place_18.bmp
  106. File: textures/box_place_24.bmp
  107. File: textures/box_place_30.bmp
  108. File: textures/box_place_36.bmp
  109. File: textures/box_place_42.bmp
  110. File: textures/brick_18.bmp
  111. File: textures/brick_24.bmp
  112. File: textures/brick_30.bmp
  113. File: textures/brick_36.bmp
  114. File: textures/brick_42.bmp
  115. File: palette.dat
  116. Records: 112
  117. Writing MAGICK_CONST...OK
  118. Writing DATA_BEGIN_SIGNATURE...OK
  119. Writing records count...OK
  120. Writing file 'levels/level01.lvl'...OK
  121. Writing file 'levels/level02.lvl'...OK
  122. Writing file 'levels/level03.lvl'...OK
  123. Writing file 'levels/level04.lvl'...OK
  124. Writing file 'levels/level05.lvl'...OK
  125. Writing file 'levels/level06.lvl'...OK
  126. Writing file 'levels/level07.lvl'...OK
  127. Writing file 'levels/level08.lvl'...OK
  128. Writing file 'levels/level09.lvl'...OK
  129. Writing file 'levels/level10.lvl'...OK
  130. Writing file 'levels/level11.lvl'...OK
  131. Writing file 'levels/level12.lvl'...OK
  132. Writing file 'levels/level13.lvl'...OK
  133. Writing file 'levels/level14.lvl'...OK
  134. Writing file 'levels/level15.lvl'...OK
  135. Writing file 'levels/level16.lvl'...OK
  136. Writing file 'levels/level17.lvl'...OK
  137. Writing file 'levels/level18.lvl'...OK
  138. Writing file 'levels/level19.lvl'...OK
  139. Writing file 'levels/level20.lvl'...OK
  140. Writing file 'levels/level21.lvl'...OK
  141. Writing file 'levels/level22.lvl'...OK
  142. Writing file 'levels/level23.lvl'...OK
  143. Writing file 'levels/level24.lvl'...OK
  144. Writing file 'levels/level25.lvl'...OK
  145. Writing file 'levels/level26.lvl'...OK
  146. Writing file 'levels/level27.lvl'...OK
  147. Writing file 'levels/level28.lvl'...OK
  148. Writing file 'levels/level29.lvl'...OK
  149. Writing file 'levels/level30.lvl'...OK
  150. Writing file 'levels/level31.lvl'...OK
  151. Writing file 'levels/level32.lvl'...OK
  152. Writing file 'levels/level33.lvl'...OK
  153. Writing file 'levels/level34.lvl'...OK
  154. Writing file 'levels/level35.lvl'...OK
  155. Writing file 'levels/level36.lvl'...OK
  156. Writing file 'levels/level37.lvl'...OK
  157. Writing file 'levels/level38.lvl'...OK
  158. Writing file 'levels/level39.lvl'...OK
  159. Writing file 'levels/level40.lvl'...OK
  160. Writing file 'levels/level41.lvl'...OK
  161. Writing file 'levels/level42.lvl'...OK
  162. Writing file 'levels/level43.lvl'...OK
  163. Writing file 'levels/level44.lvl'...OK
  164. Writing file 'levels/level45.lvl'...OK
  165. Writing file 'levels/level46.lvl'...OK
  166. Writing file 'levels/level47.lvl'...OK
  167. Writing file 'levels/level48.lvl'...OK
  168. Writing file 'levels/level49.lvl'...OK
  169. Writing file 'levels/level50.lvl'...OK
  170. Writing file 'levels/level51.lvl'...OK
  171. Writing file 'levels/level52.lvl'...OK
  172. Writing file 'levels/level53.lvl'...OK
  173. Writing file 'levels/level54.lvl'...OK
  174. Writing file 'levels/level55.lvl'...OK
  175. Writing file 'levels/level56.lvl'...OK
  176. Writing file 'levels/level57.lvl'...OK
  177. Writing file 'levels/level58.lvl'...OK
  178. Writing file 'levels/level59.lvl'...OK
  179. Writing file 'levels/level60.lvl'...OK
  180. Writing file 'levels/level61.lvl'...OK
  181. Writing file 'levels/level62.lvl'...OK
  182. Writing file 'levels/level63.lvl'...OK
  183. Writing file 'levels/level64.lvl'...OK
  184. Writing file 'levels/level65.lvl'...OK
  185. Writing file 'levels/level66.lvl'...OK
  186. Writing file 'levels/level67.lvl'...OK
  187. Writing file 'levels/level68.lvl'...OK
  188. Writing file 'levels/level69.lvl'...OK
  189. Writing file 'levels/level70.lvl'...OK
  190. Writing file 'levels/level71.lvl'...OK
  191. Writing file 'levels/level72.lvl'...OK
  192. Writing file 'levels/level73.lvl'...OK
  193. Writing file 'levels/level74.lvl'...OK
  194. Writing file 'levels/level75.lvl'...OK
  195. Writing file 'levels/level76.lvl'...OK
  196. Writing file 'levels/level77.lvl'...OK
  197. Writing file 'levels/level78.lvl'...OK
  198. Writing file 'levels/level79.lvl'...OK
  199. Writing file 'levels/level80.lvl'...OK
  200. Writing file 'levels/level81.lvl'...OK
  201. Writing file 'levels/level82.lvl'...OK
  202. Writing file 'levels/level83.lvl'...OK
  203. Writing file 'levels/level84.lvl'...OK
  204. Writing file 'levels/level85.lvl'...OK
  205. Writing file 'levels/level86.lvl'...OK
  206. Writing file 'levels/level87.lvl'...OK
  207. Writing file 'levels/level88.lvl'...OK
  208. Writing file 'levels/level89.lvl'...OK
  209. Writing file 'levels/level90.lvl'...OK
  210. Writing file 'textures/box_18.bmp'...OK
  211. Writing file 'textures/box_24.bmp'...OK
  212. Writing file 'textures/box_30.bmp'...OK
  213. Writing file 'textures/box_36.bmp'...OK
  214. Writing file 'textures/box_42.bmp'...OK
  215. Writing file 'textures/box_place_18.bmp'...OK
  216. Writing file 'textures/box_place_24.bmp'...OK
  217. Writing file 'textures/box_place_30.bmp'...OK
  218. Writing file 'textures/box_place_36.bmp'...OK
  219. Writing file 'textures/box_place_42.bmp'...OK
  220. Writing file 'textures/brick_18.bmp'...OK
  221. Writing file 'textures/brick_24.bmp'...OK
  222. Writing file 'textures/brick_30.bmp'...OK
  223. Writing file 'textures/brick_36.bmp'...OK
  224. Writing file 'textures/brick_42.bmp'...OK
  225. Writing file 'palette.dat'...OK
  226. Writing records structure...OK
  227. Writing DATA_END_SIGNATURE...OK

Встроим ресурсы в исполняемый файл игры. При первом запуске игры, если ресурсы будут не найдены, они автоматически распакуются в каталог ~/.ptsoko

  1. # bin/PtSokoPacker -b res/res.pack bin/PtSoko
  2. #

Описание параметров PtSoko

  1. # ./PtSoko -h
  2. ./PtSoko - Sokoban game implementation for QXN4.25/Photon
  3. -s, --screen <string> - Photon dev path
  4. -f, --fullscreen - Fullscreen mode
  5. -r, --resolution <string> - Window size like a
  6. 640x480 (minimum)
  7. 800x600 (default)
  8. 1024x768
  9. etc.
  10. -h, --help - Help
  11. -u, --unpack - Unpack resources
  12. -d - Debug level
  • -s Путь к устройству Photon
  • -f Полноэкранный режим
  • -r Разрешение окна, при работе в оконном режиме
  • -h Вывод справки
  • -u Принудительно распаковать ресурсы, при условии что они были встроены в исполняемый файл
  • -d Уровень отладочных сообщений

    Описание параметров PtSokoPacker

    1. # ./PtSokoPacker -h
    2. ./PtSokoPacker - Sokoban game resource packer for QXN4.25/Photon
    3. -p, --pack - <dir> <res> Pack files from directory to resource file
    4. -u, --unpack - <res> <dir> Unpack resource file
    5. -b, --binary-pack - <res> <bin> Add resource pack to binary file
    6. -c, --binary-unpack - <bin> <dir> Unpack binary
  • -p Упаковать ресурсы из указанного каталога в файл

  • -u Распаковать ресурсы из файла в указанный каталог
  • -b Встроить файл ресурсов в исполняемый файл
  • -c Распаковать ресурсы из исполняемого файла

А теперь, слайды:

Scheme

Scheme

Scheme