A pixel art painter geared specifically at NES pixel art. Includes export for .chr binary file as well as palette and namespace data.
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

64 行
1.7KB

  1. import Utils from "/app/js/common/Utils.js";
  2. import GlobalEvents from "/app/js/common/EventCaller.js";
  3. import EmitterElements from "/app/js/ui/Emitters.js";
  4. import Input from "/app/js/ui/Input.js";
  5. import Modal from "/app/js/ui/Modal.js";
  6. import Tabs from "/app/js/ui/Tabs.js";
  7. import CTRLPalettes from "/app/js/ctrls/CTRLPalettes.js";
  8. import CTRLPainter from "/app/js/ctrls/CTRLPainter.js";
  9. import CTRLPalettesStore from "/app/js/ctrls/CTRLPalettesStore.js";
  10. import CTRLBanksStore from "/app/js/ctrls/CTRLBanksStore.js";
  11. import CTRLBankTools from "/app/js/ctrls/CTRLBankTools.js";
  12. import CTRLIO from "/app/js/ctrls/CTRLIO.js";
  13. import NESPalette from "/app/js/models/NESPalette.js";
  14. function TitlePainter(pal){
  15. var elist = document.querySelectorAll(".color-NES-random");
  16. if (elist){
  17. elist.forEach(function(el){
  18. var ca = Math.floor(Math.random() * 11) + 1;
  19. var cb = Math.floor(Math.random() * 3);
  20. var index = (cb*16)+ca;
  21. el.style.color = pal[index];
  22. el.style["background-color"] = "#000";
  23. });
  24. }
  25. }
  26. function initialize(DOC){
  27. // UI and View only controllers
  28. TitlePainter(NESPalette.SystemColor);
  29. EmitterElements.initialize();
  30. Tabs.initialize();
  31. // Controllers explicitly interface model data to view.
  32. CTRLPainter.initialize();
  33. CTRLBankTools.initialize();
  34. CTRLPalettesStore.initialize();
  35. CTRLBanksStore.initialize();
  36. CTRLIO.initialize();
  37. var cover = document.querySelector(".cover");
  38. Utils.addListenerToEvents(
  39. cover,
  40. [
  41. "webkitAnimationEnd",
  42. "oanimationend",
  43. "oAnimationEnd",
  44. "msAnimationEnd",
  45. "animationend"
  46. ],
  47. function(){
  48. this.parentNode.removeChild(this);
  49. });
  50. if (cover){
  51. cover.classList.add("coverFadeout");
  52. }
  53. }
  54. initialize(document);