Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 

52 рядки
1.1 KiB

  1. define([
  2. 'js/rendering/rendererLegacy'
  3. ], function (
  4. rendererLegacy
  5. ) {
  6. const renderer = {
  7. ...rendererLegacy,
  8. buildSpriteAsync: async function (config) {
  9. const { sheetName, cell, container, layerName, spriteConfig } = config;
  10. const sprite = new PIXI.Sprite();
  11. if (spriteConfig) {
  12. for (let p in spriteConfig)
  13. sprite[p] = spriteConfig[p];
  14. }
  15. const textureExists = this.textures.hasOwnProperty(sheetName);
  16. if (!textureExists)
  17. await this.loadTexture(sheetName);
  18. sprite.texture = this.getTexture(sheetName, cell);
  19. const spriteContainer = container || this.layers[layerName || sheetName];
  20. spriteContainer.addChild(sprite);
  21. return sprite;
  22. },
  23. buildTextSprite: function (config) {
  24. const { text, container, layerName, fontSize = 14, color = 0xF2F5F5 } = config;
  25. const textSprite = new PIXI.Text(text, {
  26. fontFamily: 'bitty',
  27. fontSize: fontSize,
  28. fill: color,
  29. stroke: 0x2d2136,
  30. strokeThickness: 4,
  31. align: 'center'
  32. });
  33. const parentSprite = container || this.layers[layerName];
  34. parentSprite.addChild(textSprite);
  35. return textSprite;
  36. }
  37. };
  38. return renderer;
  39. });