Guest User

Untitled

a guest
Nov 23rd, 2017
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.30 KB | None | 0 0
  1. UiBuilder = function() {
  2. this.uiTypeMap = {};
  3. this.uiLayouts = {};
  4. this.uiComponents = {};
  5. this.uiElements = {};
  6. this.numberBuiltUis = 0;
  7. this.nextParentKey = null;
  8. };
  9.  
  10. UiBuilder.prototype.initUiBuilder = function() {
  11. this.uiTypeDb = CORE.dbIf.dbReader.dbui_uitypes;
  12. this.uiComponentDb = CORE.dbIf.dbReader.dbui_components;
  13. this.uiElementDb = CORE.dbIf.dbReader.dbui_elements;
  14. this.uiLayoutDb = CORE.dbIf.dbReader.dbui_layouts;
  15. this.setUiData();
  16. }
  17.  
  18. UiBuilder.prototype.setUiData = function() {
  19.  
  20. var allUiLayouts = CORE.dbIf.getAllDocs(this.uiLayoutDb);
  21. // console.log(allUiLayouts);
  22. for (var i = 0; i < allUiLayouts.length; i++) {
  23. var layout = allUiLayouts[i].id;
  24. console.log(layout);
  25. if (layout != "available") {
  26. var composites = CORE.dbIf.dbReader.returnResponseFromField(this.uiLayoutDb, layout, "composites");
  27. // console.log(composites);
  28. this.uiLayouts[layout] = composites;
  29. // console.log(this.uiLayouts.layout);
  30. }
  31. };
  32. console.log(this.uiLayouts);
  33.  
  34. var allUiTypes = CORE.dbIf.getAllDocs(this.uiTypeDb);
  35. // console.log(allUiTypes);
  36. for (var i = 0; i < allUiTypes.length; i++) {
  37. var type = allUiTypes[i].id;
  38. // console.log(allUiTypes[i].id);
  39. var components = CORE.dbIf.getFieldFromDocInDb(this.uiTypeDb, type, "components");
  40. // console.log(components);
  41. this.uiTypeMap[type] = components;
  42. // console.log(this.uiTypeMap);
  43. }
  44. console.log(this.uiTypeMap);
  45.  
  46.  
  47. var allComponents = CORE.dbIf.getAllDocs(this.uiComponentDb);
  48. console.log(allComponents)
  49.  
  50. for (var j = 0; j < allComponents.length; j++) {
  51. var component = allComponents[j].id;
  52. // console.log(component)
  53. var elements = CORE.dbIf.getFieldFromDocInDb(this.uiComponentDb, component, "elements");
  54. this.uiComponents[component] = elements;
  55. // console.log(this.uiComponents)
  56. // console.log(elements)
  57.  
  58. };
  59.  
  60. console.log(this.uiComponents)
  61.  
  62. var allElements = CORE.dbIf.getAllDocs(this.uiElementDb);
  63.  
  64.  
  65. for (var j = 0; j < allElements.length; j++) {
  66. var element = allElements[j].id;
  67. if (element != "available") {
  68. var elemObject = CORE.dbIf.getDocFromDb(this.uiElementDb, element);
  69. this.uiElements[element] = elemObject;
  70. }
  71. };
  72.  
  73. console.log(this.uiElements)
  74. };
  75.  
  76.  
  77. UiBuilder.prototype.buildUiLayout = function(uiEntityObject) {
  78. // var entityId = uiEntityObject.id
  79. this.containerKeys = [];
  80. var uiObject = uiEntityObject;
  81. var layout = uiObject.layout;
  82. var uiRootKey = uiObject.parentKey;
  83. uiObject.containerKeys = this.containerKeys;
  84. // CORE.gameStIf.entityHandler.getEntityById(uiObject.id)["containerKey"] = this.containerKeys;
  85.  
  86. this.numberBuiltUis = this.numberBuiltUis+1;
  87. var composites = this.uiLayouts[layout];
  88. // console.log(this.uiLayouts)
  89. // console.log(composites);
  90. // for (var i = 0; i < composites.length; i++) {
  91. var composit = composites[uiObject.type];
  92. this.layoutUiType(uiRootKey, composit, uiObject);
  93. // };
  94. };
  95.  
  96.  
  97. UiBuilder.prototype.layoutUiType = function(uiRootKey, composit, uiObject) {
  98. // console.log(composit)
  99. this.nextParentKey = uiRootKey;
  100. this.isFirst = true;
  101.  
  102. // var type = composit["type"];
  103. var components = this.uiTypeMap[uiObject.type];
  104.  
  105. // console.log(type)
  106. // console.log(components)
  107.  
  108. for (var i = 0; i < components.length; i++) {
  109. var component = components[i];
  110. this.buildUiComponent(composit, component, uiObject);
  111. };
  112. // return type;
  113. };
  114.  
  115. UiBuilder.prototype.buildUiComponent = function(composit, component, uiObject) {
  116. console.log(component)
  117. var elements = this.uiComponents[component];
  118. // console.log(this.uiComponents)
  119. // console.log(elements)
  120. for (var i = 0; i < elements.length; i++) {
  121. var element = elements[i];
  122. this.createUiElement(composit, component, element, uiObject);
  123. };
  124. };
  125.  
  126. UiBuilder.prototype.createUiElement = function(composit, component, element, uiObject) {
  127. var elementObject = this.uiElements[element];
  128. // console.log(this.nextParentKey)
  129. this.nextParentKey = UIROOT.uiElementConfigurator.configureNewElement(uiObject, this.nextParentKey, composit, elementObject, this.isFirst)
  130. // console.log(component)
  131. if (component == "container") {
  132. this.containerKeys.push(this.nextParentKey)
  133. // CORE.gameStIf.entityHandler.addPropertyValueToEntityId("containerKey", this.nextParentKey, uiObject.id)
  134.  
  135. console.log(uiObject)
  136. };
  137.  
  138. this.isFirst = false;
  139. };
Add Comment
Please, Sign In to add comment