Main.hx 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. package;
  2. import format.gbs_otterui.GbsReader;
  3. import format.gbs_otterui.Tools;
  4. import format.gbs_otterui.GbsData;
  5. using format.gbs_otterui.Tools;
  6. class Main {
  7. static function main() {
  8. // new Main(); // 1
  9. // Creating an array using array syntax and explicit type definition Array<String>
  10. // var strings:Array<String> = ["Apple", "Pear", "Banana"];
  11. // trace(strings);
  12. // var chars = [for (c in 65...70) String.fromCharCode(c)];
  13. // trace(chars); // ['A','B','C','D','E']
  14. // For debugging
  15. #if (cpp && debug)
  16. Sys.setCwd("..");
  17. #end
  18. // Cross platform paths
  19. var location = "path/to/file.txt";
  20. var path = new haxe.io.Path(location);
  21. trace(path.dir); // path/to
  22. trace(path.file); // file
  23. trace(path.ext); // txt
  24. // combining path
  25. var directory = "path/to/";
  26. var file = "./file.txt";
  27. trace(haxe.io.Path.join([directory, file])); // path/to/file.txt
  28. trace('\n');
  29. // Check path
  30. trace("Program path: " + Sys.programPath());
  31. trace("Working directory: " + Sys.getCwd());
  32. // concatArray();
  33. // ArrayContains();
  34. new RepackingGbs().processingPixel();
  35. new RepackingGbs().processingMain();
  36. trace('The End.');
  37. }
  38. // 2
  39. // function new() {};
  40. static function ArrayContains() {
  41. var a = [];
  42. a[5] = 'b';
  43. a[3] = "hello there";
  44. trace(a[5]);
  45. // trace(a);
  46. var s = a.contains('b');
  47. trace('array contains: ${s}');
  48. if (a[2] != null) {
  49. trace('success 2');
  50. }
  51. if (a[5] != null) {
  52. trace('success 5');
  53. }
  54. };
  55. static function concatArray() {
  56. var fontsBlock:GbsFont = {
  57. fontLength: 3900,
  58. fontID: 49,
  59. fontName: 'AccentMedWhite',
  60. fontSize: 30,
  61. atlasWidth: 256,
  62. atlasHeight: 256,
  63. maxTop: 26,
  64. atlasCount: 1,
  65. charsCount: 95,
  66. charsBlock: [
  67. {
  68. charCode: 'a',
  69. imageGlyph: no,
  70. charXOffset: 60,
  71. charYOffset: 27,
  72. charWidth: 26,
  73. charHeight: 20,
  74. charTop: 20,
  75. charAdvance: 22,
  76. charLeftBearing: -2,
  77. charAtlasIndex: 0
  78. }
  79. ]
  80. };
  81. var charB:GbsChar = {
  82. charCode: 'b',
  83. imageGlyph: no,
  84. charXOffset: 78,
  85. charYOffset: 182,
  86. charWidth: 21,
  87. charHeight: 21,
  88. charTop: 21,
  89. charAdvance: 20,
  90. charLeftBearing: 0,
  91. charAtlasIndex: 0
  92. }
  93. var charB = [charB];
  94. var objectArray = {
  95. [fontsBlock];
  96. };
  97. trace(objectArray);
  98. trace(objectArray[0].fontName);
  99. trace(objectArray[0].charsBlock[0].charCode);
  100. // Конкатенация массивов
  101. objectArray[0].charsBlock = objectArray[0].charsBlock.concat(charB);
  102. trace(objectArray[0].charsBlock);
  103. trace(objectArray[0].charsBlock[1].charCode);
  104. trace(objectArray[0]);
  105. // Копирование массива
  106. var charsArray = objectArray[0].charsBlock.copy();
  107. trace(charsArray);
  108. }
  109. }