options.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. 'use strict';
  2. var game = Atomic.game;
  3. var view = game.uiView;
  4. var UI = Atomic.UI;
  5. var UIWindow = Atomic.UIWindow;
  6. var localStorage = Atomic.localStorage;
  7. var window;
  8. function closeWindow() {
  9. if (window)
  10. window.die();
  11. window = null;
  12. }
  13. var blackAndWhiteSetting = false;
  14. var blurSetting = false;
  15. exports.getOptions = function() {
  16. return {
  17. "blackAndWhite": blackAndWhiteSetting,
  18. "blur": blurSetting
  19. };
  20. };
  21. exports.init = function(onClose) {
  22. window = new UIWindow();
  23. window.settings = Atomic.UI.WINDOW_SETTINGS_TITLEBAR;
  24. window.text = "Options";
  25. window.load("UI/options.ui.txt");
  26. window.resizeToFitContent();
  27. view.addChild(window);
  28. window.center();
  29. var blackAndWhite = window.getWidget("ppbw");
  30. var blur = window.getWidget("ppblur");
  31. blackAndWhite.value = blackAndWhiteSetting;
  32. blur.value = blurSetting;
  33. blackAndWhite.onChanged = function() {
  34. blackAndWhiteSetting = blackAndWhite.value;
  35. };
  36. window.getWidget("server_name").setText(localStorage.getServerName());
  37. window.getWidget("player_name").setText(localStorage.getPlayerName());
  38. blur.onChanged = function() {
  39. blurSetting = blur.value;
  40. };
  41. window.getWidget("ok").onClick = function () {
  42. var serverName = window.getWidget("server_name").getText();
  43. var playerName = window.getWidget("player_name").getText();
  44. localStorage.setServerName(serverName);
  45. localStorage.setPlayerName(playerName);
  46. closeWindow();
  47. onClose();
  48. };
  49. };
  50. exports.shutdown = function() {
  51. closeWindow();
  52. };