Advertisement
kolton

Untitled

Dec 23rd, 2011
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 31.30 KB | None | 0 0
  1. /*
  2. controlInfo() Class written by njaguar
  3. v3.1
  4. */
  5.  
  6. function controlInfo() {
  7. this.controls = [];
  8. this.controls.lobby = [];
  9. this.controls.lobby.name = "Lobby";
  10. this.controls.lobby.id = 1;
  11.  
  12. this.controls.lobby.textBox = [];
  13. this.controls.lobby.textBox.chat = [4,28,410,354,298];
  14. this.controls.lobby.textBox.status = [4,447,398,290,269];
  15. this.controls.lobby.textBox.characterInfo = [4,143,588,230,87];
  16.  
  17. this.controls.lobby.button = [];
  18. this.controls.lobby.button.create = [6,533,469,120,20];
  19. this.controls.lobby.button.join = [6,652,469,120,20];
  20. this.controls.lobby.button.channel = [6,535,490,80,20];
  21. this.controls.lobby.button.ladder = [6,614,490,80,20];
  22. this.controls.lobby.button.quit = [6,693,490,80,20];
  23. this.controls.lobby.button.enterChat = [6,27,480,120,20];
  24. this.controls.lobby.button.help = [6,146,480,120,20];
  25.  
  26. this.controls.lobby.location = [
  27. this.controls.lobby.button.enterChat,
  28. this.controls.lobby.button.help,
  29. ];
  30.  
  31.  
  32. this.controls.lobby.inLine = [];
  33. this.controls.lobby.inLine.name = "Waiting In Line";
  34. this.controls.lobby.inLine.id = 2;
  35.  
  36. this.controls.lobby.inLine.textBox = [];
  37. this.controls.lobby.inLine.textBox.inLine = [4,427,234,300,100];
  38.  
  39. this.controls.lobby.inLine.button = [];
  40. this.controls.lobby.inLine.button.cancel = [6,433,433,96,32];
  41.  
  42. this.controls.lobby.inLine.location = [
  43. this.controls.lobby.inLine.textBox.inLine,
  44. this.controls.lobby.inLine.button.cancel,
  45. ];
  46.  
  47. this.controls.lobby.serverDown = [];
  48. this.controls.lobby.serverDown.name = "Server Down";
  49. this.controls.lobby.serverDown.id = 24;
  50.  
  51. this.controls.lobby.serverDown.textBox = [];
  52. this.controls.lobby.serverDown.textBox.serverDown = [4,438,300,326,150];
  53. this.controls.lobby.serverDown.textBox.serverDown.key = [5139];
  54.  
  55. this.controls.lobby.serverDown.location = [
  56. this.controls.lobby.serverDown.textBox.serverDown,
  57. ]
  58.  
  59. // this is also the Please Wait dialog in the lobby, as well as Character Already Exists for creating chars
  60. this.controls.lobby.pleaseWait = [];
  61. this.controls.lobby.pleaseWait.name = "Please Wait...";//"Lost Connection";
  62. this.controls.lobby.pleaseWait.id = 25;
  63.  
  64. this.controls.lobby.pleaseWait.textBox = [];
  65. this.controls.lobby.pleaseWait.textBox.pleaseWait = [4,268,320,264,120];
  66.  
  67. this.controls.lobby.pleaseWait.button = [];
  68. this.controls.lobby.pleaseWait.button.cancel = [6,351,337,96,32];
  69.  
  70. this.controls.lobby.pleaseWait.location = [
  71. this.controls.lobby.pleaseWait.textBox.pleaseWait,
  72. this.controls.lobby.pleaseWait.button.cancel,
  73. ];
  74.  
  75.  
  76. // this is also the Please Wait dialog in the lobby
  77. this.controls.lobby.lostConnection = [];
  78. this.controls.lobby.lostConnection.name = "Lost Connection";
  79. this.controls.lobby.lostConnection.id = 17;
  80.  
  81. this.controls.lobby.lostConnection.textBox = [];
  82. this.controls.lobby.lostConnection.textBox.lostConnection = [4,268,320,264,120];
  83. this.controls.lobby.lostConnection.textBox.lostConnection.key = [5351];
  84.  
  85. this.controls.lobby.lostConnection.button = [];
  86. this.controls.lobby.lostConnection.button.ok = [6,351,337,96,32];
  87.  
  88. this.controls.lobby.lostConnection.location = [
  89. this.controls.lobby.lostConnection.textBox.lostConnection,
  90. this.controls.lobby.lostConnection.button.ok,
  91. ];
  92.  
  93.  
  94. // Game Name Already Exists
  95. this.controls.lobby.gameExists = [];
  96. this.controls.lobby.gameExists.name = "Game Already Exists";
  97. this.controls.lobby.gameExists.id = 26;
  98.  
  99. this.controls.lobby.gameExists.textBox = [];
  100. this.controls.lobby.gameExists.textBox.gameExists = [4,438,300,326,150];
  101. this.controls.lobby.gameExists.textBox.gameExists.key = [5138];
  102.  
  103. this.controls.lobby.gameExists.location = [
  104. this.controls.lobby.gameExists.textBox.gameExists,
  105. ];
  106.  
  107.  
  108. // Game Does Not Exist (also A Game Already Exists With That Name and Server Down w/ different key)
  109. this.controls.lobby.gameDoesNotExist = [];
  110. this.controls.lobby.gameDoesNotExist.name = "Game Does Not Exist";
  111. this.controls.lobby.gameDoesNotExist.id = 28;
  112.  
  113. this.controls.lobby.gameDoesNotExist.textBox = [];
  114. this.controls.lobby.gameDoesNotExist.textBox.text = [4,438,300,326,150];
  115. this.controls.lobby.gameDoesNotExist.textBox.text.key = [5159];
  116.  
  117. this.controls.lobby.gameDoesNotExist.location = [
  118. this.controls.lobby.gameDoesNotExist.textBox.text,
  119. ];
  120.  
  121.  
  122. this.controls.lobby.chat = [];
  123. this.controls.lobby.chat.name = "Lobby Chat";
  124. this.controls.lobby.chat.id = 3;
  125.  
  126. this.controls.lobby.chat.button = [];
  127. this.controls.lobby.chat.button.send = [6,27,470,80,20];
  128. this.controls.lobby.chat.button.whisper = [6,107,470,80,20];
  129. this.controls.lobby.chat.button.help = [6,187,470,80,20];
  130. this.controls.lobby.chat.button.squelch = [6,27,490,72,20];
  131. this.controls.lobby.chat.button.unsquelch = [6,99,490,96,20];
  132. this.controls.lobby.chat.button.emote = [6,195,490,72,20];
  133.  
  134. this.controls.lobby.chat.textBox = [];
  135. this.controls.lobby.chat.textBox.channelName = [4,28,138,354,60];
  136.  
  137. this.controls.lobby.chat.location = [
  138. this.controls.lobby.chat.button.send,
  139. this.controls.lobby.chat.button.whisper,
  140. this.controls.lobby.chat.button.help,
  141. ];
  142.  
  143.  
  144. this.controls.lobby.create = [];
  145. this.controls.lobby.create.name = "Create Game";
  146. this.controls.lobby.create.id = 4;
  147.  
  148. this.controls.lobby.create.textBox = [];
  149. this.controls.lobby.create.textBox.createGame = [4,496,111,200,22];
  150. this.controls.lobby.create.textBox.gameName = [4,427,134,150,12];
  151. this.controls.lobby.create.textBox.password = [4,427,188,300,12];
  152. this.controls.lobby.create.textBox.gameDescription = [4,427,243,300,12];
  153. this.controls.lobby.create.textBox.maxNumberOfPlayers = [4,632,306,300,12];
  154. this.controls.lobby.create.textBox.characterDifference = [4,632,342,300,12];
  155. this.controls.lobby.create.textBox.levels = [4,705,342,150,12];
  156. this.controls.lobby.create.textBox.normal = [4,723,380,150,12];
  157. this.controls.lobby.create.textBox.nightmare = [4,579,380,150,12];
  158. this.controls.lobby.create.textBox.hell = [4,459,380,150,12];
  159.  
  160. this.controls.lobby.create.editBox = [];
  161. this.controls.lobby.create.editBox.gameName = [1,432,162,158,20];
  162. this.controls.lobby.create.editBox.password = [1,432,217,158,20];
  163. this.controls.lobby.create.editBox.gameDescription = [1,432,268,333,20];
  164. this.controls.lobby.create.editBox.maxNumberOfPlayers = [1,657,308,27,20];
  165. this.controls.lobby.create.editBox.characterDifference = [1,657,342,27,20];
  166.  
  167. this.controls.lobby.create.button = [];
  168. this.controls.lobby.create.button.createGame = [6,594,433,172,32];
  169. this.controls.lobby.create.button.cancel = [6,433,433,96,32];
  170. this.controls.lobby.create.button.maxNumberOfPlayersUp = [0];
  171. this.controls.lobby.create.button.maxNumberOfPlayersDown = [0];
  172. this.controls.lobby.create.button.useCharacterDifference = [0];
  173. this.controls.lobby.create.button.characterDifferenceUp = [0];
  174. this.controls.lobby.create.button.characterDifferenceDown = [0];
  175. this.controls.lobby.create.button.normal = [6,430,381,16,16];
  176. this.controls.lobby.create.button.nightmare = [6,555,381,16,16];
  177. this.controls.lobby.create.button.hell = [6,698,381,16,16];
  178.  
  179. this.controls.lobby.create.location = [
  180. this.controls.lobby.create.editBox.gameName,
  181. this.controls.lobby.create.editBox.password,
  182. this.controls.lobby.create.editBox.gameDescription,
  183. ];
  184.  
  185.  
  186. // insert all game join controls here
  187. this.controls.lobby.join = [];
  188. this.controls.lobby.join.name = "Join Game";
  189. this.controls.lobby.join.id = 5;
  190.  
  191. this.controls.lobby.join.editBox = [];
  192. this.controls.lobby.join.editBox.gameName = [1,432,148,155,20];
  193. this.controls.lobby.join.editBox.password = [1,606,148,155,20];
  194.  
  195. this.controls.lobby.join.textBox = [];
  196. this.controls.lobby.join.textBox.joinGame = [4,496,106,200,22];
  197. this.controls.lobby.join.textBox.gameName = [4,428,121,150,12];
  198. this.controls.lobby.join.textBox.password = [4,602,121,150,12];
  199. this.controls.lobby.join.textBox.gameNamePlayers = [4,431,212,200,12];
  200. this.controls.lobby.join.textBox.gameList = [4,432,393,160,173]; // list is stored in extended text
  201. this.controls.lobby.join.textBox.gameDetails = [4,609,393,143,194]; // details is stored in extended text
  202.  
  203. this.controls.lobby.join.button = [];
  204. this.controls.lobby.join.button.joinGame = [6,594,433,172,32];
  205. this.controls.lobby.join.button.cancel = [6,433,433,96,32];
  206.  
  207. this.controls.lobby.join.location = [
  208. this.controls.lobby.join.editBox.gameName,
  209. this.controls.lobby.join.textBox.joinGame,
  210. this.controls.lobby.join.textBox.gameList,
  211. ];
  212.  
  213.  
  214. // insert all game ladder controls here
  215. this.controls.lobby.ladder = [];
  216. this.controls.lobby.ladder.name = "Ladder";
  217. this.controls.lobby.ladder.id = 6;
  218.  
  219. this.controls.lobby.ladder.textBox = [];
  220. this.controls.lobby.ladder.button = [];
  221. this.controls.lobby.ladder.list = [];
  222.  
  223.  
  224. // insert all game channel controls here
  225. this.controls.lobby.channel = [];
  226. this.controls.lobby.channel.name = "Channel List";
  227. this.controls.lobby.channel.id = 7;
  228.  
  229. this.controls.lobby.channel.textBox = [];
  230. this.controls.lobby.channel.editBox = [];
  231. this.controls.lobby.channel.button = [];
  232. this.controls.lobby.channel.list = [];
  233.  
  234.  
  235. // insert all main menu controls here
  236. this.controls.mainMenu = [];
  237. this.controls.mainMenu.name = "Main Menu";
  238. this.controls.mainMenu.id = 8;
  239.  
  240. this.controls.mainMenu.textBox = [];
  241. this.controls.mainMenu.textBox.d2Version = [4,0,599,200,40];
  242.  
  243. this.controls.mainMenu.button = [];
  244. this.controls.mainMenu.button.gateway = [6,264,391,272,25];
  245. this.controls.mainMenu.button.battleNet = [6,264,366,272,35];
  246. this.controls.mainMenu.button.otherMultiplayer = [6,264,433,272,35];
  247. this.controls.mainMenu.button.singlePlayer = [6,264,324,272,35];
  248. this.controls.mainMenu.button.credits = [6,264,528,135,25];
  249. this.controls.mainMenu.button.cinematics = [6,402,528,135,25];
  250. this.controls.mainMenu.button.exitDiabloII = [6,264,568,272,35];
  251.  
  252. this.controls.mainMenu.location = [
  253. this.controls.mainMenu.button.battleNet,
  254. this.controls.mainMenu.button.otherMultiplayer,
  255. this.controls.mainMenu.button.singlePlayer,
  256. ];
  257.  
  258.  
  259. // connecting to battle.net
  260. this.controls.mainMenu.connecting = [];
  261. this.controls.mainMenu.connecting.id = 21;
  262. this.controls.mainMenu.connecting.name = "Connecting to Battle.net";
  263.  
  264. this.controls.mainMenu.connecting.textBox = [];
  265. this.controls.mainMenu.connecting.textBox.connectingTo = [4,222,280,340,60];
  266. this.controls.mainMenu.connecting.textBox.body = [4,222,360,340,70]; // contains connecting to battle.net/fastest server, accessing your account, or checking versions
  267. this.controls.mainMenu.connecting.textBox.progress = [4,222,370,340,20]; // dots
  268.  
  269. this.controls.mainMenu.connecting.button = [];
  270. this.controls.mainMenu.connecting.button.cancel = [6,330,416,128,35];
  271.  
  272. this.controls.mainMenu.connecting.location = [
  273. this.controls.mainMenu.connecting.textBox.connectingTo,
  274. this.controls.mainMenu.connecting.textBox.body,
  275. this.controls.mainMenu.connecting.textBox.progress,
  276. this.controls.mainMenu.connecting.button.cancel,
  277. ];
  278.  
  279.  
  280. // startup screen
  281. this.controls.d2Splash = [];
  282. this.controls.d2Splash.name = "D2 Splash"
  283. this.controls.d2Splash.id = 18;
  284.  
  285. this.controls.d2Splash.textBox = [];
  286. this.controls.d2Splash.textBox.copyright = [4,100,580,600,80];
  287.  
  288. this.controls.d2Splash.location = [
  289. this.controls.d2Splash.textBox.copyright,
  290. ];
  291.  
  292.  
  293.  
  294. // insert all bnet login controls here (including account settings)
  295. // add: ACCOUNT SETTINGS, CHANGE PASSWORD, GET NEW PASSWORD, CHANGE EMAIL, CREATE NEW ACCOUNT agreement & form
  296. this.controls.login = [];
  297. this.controls.login.name = "Login";
  298. this.controls.login.id = 9;
  299.  
  300. this.controls.login.textBox = [];
  301. this.controls.login.textBox.accountName = [4,321,340,300,32];
  302. this.controls.login.textBox.password = [4,321,394,300,32];
  303. this.controls.login.textBox.heading = [4,200,350,400,100];
  304.  
  305. this.controls.login.editBox = [];
  306. this.controls.login.editBox.accountName = [1,322,342,162,19];
  307. this.controls.login.editBox.password = [1,322,396,162,19];
  308.  
  309. this.controls.login.button = [];
  310. this.controls.login.button.createNewAccount = [6,264,572,272,35];
  311. this.controls.login.button.accountSettings = [6,264,528,272,35];
  312. this.controls.login.button.logIn = [6,264,484,272,35];
  313. this.controls.login.button.exit = [6,33,572,128,35];
  314.  
  315. this.controls.login.location = [
  316. this.controls.login.textBox.accountName,
  317. this.controls.login.editBox.password,
  318. this.controls.login.editBox.accountName,
  319. this.controls.login.button.logIn,
  320. ];
  321.  
  322.  
  323. // login error, permanent failure, bad account or password
  324. this.controls.login.loginError = [];
  325. this.controls.login.loginError.name = "Login Error";
  326. this.controls.login.loginError.id = 10;
  327.  
  328. this.controls.login.loginError.textBox = [];
  329. this.controls.login.loginError.textBox.loginError = [4,195,237,410,40]; // used for invalid login/password popups
  330. this.controls.login.loginError.textBox.errorMessage = [4,199,377,402,140];
  331.  
  332. this.controls.login.loginError.button = [];
  333. this.controls.login.loginError.button.ok = [6,335,412,128,35]; // used for invalid login/password popups
  334.  
  335. this.controls.login.loginError.location = [
  336. this.controls.login.loginError.textBox.loginError,
  337. this.controls.login.loginError.button.ok,
  338. ];
  339.  
  340.  
  341. // unable to connect, related to ip-bans or no internet connection
  342. this.controls.login.unableToConnect = [];
  343. this.controls.login.unableToConnect.name = "Unable To Connect";
  344. this.controls.login.unableToConnect.id = 11;
  345.  
  346. this.controls.login.unableToConnect.textBox = [];
  347. this.controls.login.unableToConnect.textBox.title = [4,158,220,485,40];
  348. this.controls.login.unableToConnect.textBox.head = [4,162,320,477,100];
  349. this.controls.login.unableToConnect.textBox.body = [4,162,420,477,100];
  350.  
  351. this.controls.login.unableToConnect.button = [];
  352. this.controls.login.unableToConnect.button.ok = [6,335,450,128,35];
  353.  
  354. this.controls.login.unableToConnect.location = [
  355. this.controls.login.unableToConnect.textBox.title,
  356. this.controls.login.unableToConnect.textBox.head,
  357. this.controls.login.unableToConnect.button.ok,
  358. ];
  359.  
  360.  
  361. this.controls.login.cdkeyInUse = [];
  362. this.controls.login.cdkeyInUse.name = "Cdkey In Use";
  363. this.controls.login.cdkeyInUse.id = 19;
  364.  
  365. this.controls.login.cdkeyInUse.textBox = [];
  366. this.controls.login.cdkeyInUse.textBox.unableToConnect = [4,158,220,485,40];
  367. this.controls.login.cdkeyInUse.textBox.cdkeyInUse = [4,162,270,477,50];
  368. this.controls.login.cdkeyInUse.textBox.byWho = [4,158,310,485,40];
  369. this.controls.login.cdkeyInUse.textBox.onlyOneRegistered = [4,162,420,477,100];
  370.  
  371. this.controls.login.cdkeyInUse.button = [];
  372. this.controls.login.cdkeyInUse.button.ok = [6,335,450,128,35];
  373.  
  374. this.controls.login.cdkeyInUse.location = [
  375. this.controls.login.cdkeyInUse.textBox.unableToConnect,
  376. this.controls.login.cdkeyInUse.textBox.cdkeyInUse,
  377. this.controls.login.cdkeyInUse.textBox.byWho,
  378. ];
  379.  
  380.  
  381. // login - invalid cdkey
  382. this.controls.login.invalidCdkey = [];
  383. this.controls.login.invalidCdkey.id = 22;
  384. this.controls.login.invalidCdkey.name = "Invalid Cdkey";
  385.  
  386. this.controls.login.invalidCdkey.textBox = [];
  387. this.controls.login.invalidCdkey.textBox.unableToConnect = [4,158,220,485,40];
  388. this.controls.login.invalidCdkey.textBox.invalidCdkey = [4,162,320,477,100];
  389. this.controls.login.invalidCdkey.textBox.invalidCdkey.key = [5202, 10912];
  390. this.controls.login.invalidCdkey.textBox.uninstall = [4,162,420,477,100];
  391.  
  392. this.controls.login.invalidCdkey.button = [];
  393. this.controls.login.invalidCdkey.button.ok = [6,335,450,128,35];
  394.  
  395. this.controls.login.invalidCdkey.location = [
  396. this.controls.login.invalidCdkey.textBox.unableToConnect,
  397. this.controls.login.invalidCdkey.textBox.invalidCdkey,
  398. this.controls.login.invalidCdkey.textBox.uninstall,
  399. this.controls.login.invalidCdkey.button.ok
  400. ];
  401.  
  402.  
  403. // insert all character select screen controls here (including single player)
  404. this.controls.characterSelect = [];
  405. this.controls.characterSelect.name = "Character Select";
  406. this.controls.characterSelect.id = 12;
  407.  
  408. this.controls.characterSelect.textBox = [];
  409. this.controls.characterSelect.textBox.selectedCharName = [4,85,78,466,42];
  410. this.controls.characterSelect.textBox.currentRealm = [4,629,44,145,21];
  411. this.controls.characterSelect.textBox.selectedCurrentRealm = [4,626,100,151,44];
  412. this.controls.characterSelect.textBox.characters = new Array(8);
  413. this.controls.characterSelect.textBox.characters[0] = [4,237,178,72,93];
  414. this.controls.characterSelect.textBox.characters[1] = [4,509,178,72,93];
  415. this.controls.characterSelect.textBox.characters[2] = [4,237,271,72,93];
  416. this.controls.characterSelect.textBox.characters[3] = [4,509,271,72,93];
  417. this.controls.characterSelect.textBox.characters[4] = [4,237,364,72,93];
  418. this.controls.characterSelect.textBox.characters[5] = [4,509,364,72,93];
  419. this.controls.characterSelect.textBox.characters[6] = [4,237,457,72,93];
  420. this.controls.characterSelect.textBox.characters[7] = [4,509,457,72,93];
  421. this.controls.characterSelect.textBox.characterInfo = new Array(8);
  422. this.controls.characterSelect.textBox.characterInfo[0] = [4,37,178,200,92];
  423. this.controls.characterSelect.textBox.characterInfo[1] = [4,309,178,200,92];
  424. this.controls.characterSelect.textBox.characterInfo[2] = [4,37,271,200,92];
  425. this.controls.characterSelect.textBox.characterInfo[3] = [4,309,271,200,92];
  426. this.controls.characterSelect.textBox.characterInfo[4] = [4,37,364,200,92];
  427. this.controls.characterSelect.textBox.characterInfo[5] = [4,309,364,200,92];
  428. this.controls.characterSelect.textBox.characterInfo[6] = [4,37,457,200,92];
  429. this.controls.characterSelect.textBox.characterInfo[7] = [4,309,457,200,92];
  430. this.controls.characterSelect.textBox.deleteConfirmation = [];
  431.  
  432. this.controls.characterSelect.button = [];
  433. this.controls.characterSelect.button.ok = [6,627,572,128,35];
  434. this.controls.characterSelect.button.exit = [6,33,572,128,35];
  435. this.controls.characterSelect.button.createNew = [6,33,528,168,60];
  436. this.controls.characterSelect.button.convertTo = [6,233,528,168,60];
  437. this.controls.characterSelect.button.deleteChar = [6,433,528,168,60];
  438. this.controls.characterSelect.button.changeRealm = [6,609,113,182,30];
  439. this.controls.characterSelect.button.deleteYes = [];
  440. this.controls.characterSelect.button.deleteNo = [];
  441.  
  442. this.controls.characterSelect.location = [
  443. this.controls.characterSelect.textBox.selectedCharName,
  444. this.controls.characterSelect.textBox.characters[0],
  445. this.controls.characterSelect.textBox.characterInfo[7],
  446. ];
  447.  
  448.  
  449. this.controls.characterCreate = [];
  450. this.controls.characterCreate.name = "Character Create";
  451. this.controls.characterCreate.id = 29;
  452.  
  453. this.controls.characterCreate.editBox = [];
  454. this.controls.characterCreate.editBox.charName = [1,318,510,157,16];
  455.  
  456. this.controls.characterCreate.textBox = [];
  457. this.controls.characterCreate.textBox.selectHeroClass = [4,0,80,800,50];
  458. this.controls.characterCreate.textBox.charName = [4,321,512,200,32];
  459. this.controls.characterCreate.textBox.bottomText = [4,210,610,430,120];
  460. this.controls.characterCreate.textBox.expansionChar = [4,339,561,200,32];
  461. this.controls.characterCreate.textBox.hardcore = [4,339,581,100,32];
  462. this.controls.characterCreate.textBox.ladderChar = [4,339,601,200,32];
  463. this.controls.characterCreate.textBox.className = [4,0,180,800,100];
  464. this.controls.characterCreate.textBox.classDesc = [4,250,210,300,100];
  465.  
  466. this.controls.characterCreate.button = [];
  467. this.controls.characterCreate.button.exit = [6,33,572,128,35];
  468. this.controls.characterCreate.button.expansionChar = [6,319,540,15,16];
  469. this.controls.characterCreate.button.hardcore = [6,319,560,15,16];
  470. this.controls.characterCreate.button.ladderChar = [6,319,580,15,16];
  471. this.controls.characterCreate.button.ok = [6,627,572,128,35];
  472.  
  473. this.controls.characterCreate.chars = new Array(9);
  474. this.controls.characterCreate.chars[0] = [2,400,330,88,184];
  475. this.controls.characterCreate.chars[1] = [2,626,353,88,184];
  476. this.controls.characterCreate.chars[2] = [2,521,339,88,184];
  477. this.controls.characterCreate.chars[3] = [2,301,333,88,184];
  478. this.controls.characterCreate.chars[4] = [2,232,364,88,184];
  479. this.controls.characterCreate.chars[5] = [2,100,337,88,184];
  480. this.controls.characterCreate.chars[6] = [2,720,370,88,184];
  481. this.controls.characterCreate.chars[7] = [2,345,470,110,127];
  482. this.controls.characterCreate.chars[8] = [2,268,350,264,176];
  483.  
  484. this.controls.characterCreate.location = [
  485. this.controls.characterCreate.textBox.selectHeroClass,
  486. this.controls.characterCreate.textBox.bottomText,
  487. ];
  488.  
  489. /*
  490. this.controls.characterCreate.alreadyExists = [];
  491. this.controls.characterCreate.alreadyExists.name = "Character Create - Dupe Name";
  492. this.controls.characterCreate.alreadyExists.id = 30;
  493.  
  494. this.controls.characterCreate.alreadyExists.textBox = [];
  495. this.controls.characterCreate.alreadyExists.textBox.errorMsg = [4,268,320,264,120];
  496.  
  497. this.controls.characterCreate.alreadyExists.button = [];
  498. this.controls.characterCreate.alreadyExists.button.ok = [6,351,337,96,32];
  499.  
  500. this.controls.characterCreate.alreadyExists.location = [
  501. this.controls.characterCreate.alreadyExists.textBox.errorMsg,
  502. this.controls.characterCreate.alreadyExists.button.ok,
  503. ];
  504. */
  505.  
  506.  
  507. // realm down on char select screen
  508. this.controls.characterSelect.realmDown = [];
  509. this.controls.characterSelect.realmDown.name = "Realm Down";
  510. this.controls.characterSelect.realmDown.id = 13;
  511.  
  512. this.controls.characterSelect.realmDown.textBox = [];
  513. this.controls.characterSelect.realmDown.textBox.realmDown = [4,45,318,531,140];
  514. this.controls.characterSelect.realmDown.textBox.realmDown.key = [11162];
  515.  
  516. this.controls.characterSelect.realmDown.location = [
  517. this.controls.characterSelect.realmDown.textBox.realmDown,
  518. ];
  519. this.controls.characterSelect.realmDown.checkNullText = true;
  520.  
  521.  
  522. // Connecting on char select screen
  523. this.controls.characterSelect.connecting = [];
  524. this.controls.characterSelect.connecting.name = "Connecting...";
  525. this.controls.characterSelect.connecting.id = 23;
  526.  
  527. this.controls.characterSelect.connecting.textBox = [];
  528. this.controls.characterSelect.connecting.textBox.connecting = [4,37,178,547,35];
  529. this.controls.characterSelect.connecting.textBox.connecting.key = [11065];
  530.  
  531. this.controls.characterSelect.connecting.location = [
  532. this.controls.characterSelect.connecting.textBox.connecting,
  533. ];
  534. this.controls.characterSelect.connecting.checkNullText = true;
  535.  
  536.  
  537. // Popup: You were,disconnected from,battle.net. Please,reconnect.
  538. this.controls.characterSelect.disconnected = [];
  539. this.controls.characterSelect.disconnected.name = "Disconnected";
  540. this.controls.characterSelect.disconnected.id = 14;
  541.  
  542. this.controls.characterSelect.disconnected.textBox = [];
  543. this.controls.characterSelect.disconnected.textBox.disconnected = [4,268,300,264,100];
  544. this.controls.characterSelect.disconnected.textBox.disconnected.key = [5347];
  545.  
  546. this.controls.characterSelect.disconnected.button = [];
  547. this.controls.characterSelect.disconnected.button.ok = [6,351,337,96,32];
  548.  
  549. this.controls.characterSelect.disconnected.location = [
  550. this.controls.characterSelect.disconnected.textBox.disconnected,
  551. this.controls.characterSelect.disconnected.button.ok,
  552. ];
  553.  
  554.  
  555. // Single Player - Difficulty Select
  556. this.controls.characterSelect.difficulty = [];
  557. this.controls.characterSelect.difficulty.name = "Select Difficulty";
  558. this.controls.characterSelect.difficulty.id = 20;
  559.  
  560. this.controls.characterSelect.difficulty.textBox = [];
  561. this.controls.characterSelect.difficulty.textBox.select = [4,264,260,272,35];
  562.  
  563. this.controls.characterSelect.difficulty.button = [];
  564. this.controls.characterSelect.difficulty.button.normal = [6,264,297,272,35];
  565. this.controls.characterSelect.difficulty.button.nightmare = [6,264,340,272,35];
  566. this.controls.characterSelect.difficulty.button.hell = [6,264,383,272,35];
  567.  
  568. this.controls.characterSelect.difficulty.location = [
  569. this.controls.characterSelect.difficulty.textBox.select,
  570. this.controls.characterSelect.difficulty.button.normal,
  571. this.controls.characterSelect.difficulty.button.nightmare,
  572. this.controls.characterSelect.difficulty.button.hell,
  573. ];
  574.  
  575.  
  576. // new character controls
  577. this.controls.newCharacter = [];
  578. this.controls.newCharacter.name = "New Character";
  579. this.controls.newCharacter.id = 15;
  580.  
  581. this.controls.newCharacter.textBox = [];
  582. this.controls.newCharacter.editBox = [];
  583. this.controls.newCharacter.button = [];
  584.  
  585.  
  586. // Please Wait control popup
  587. this.controls.characterSelect.pleaseWait = [];
  588. this.controls.characterSelect.pleaseWait.name = "Please Wait";
  589. this.controls.characterSelect.pleaseWait.id = 16;
  590.  
  591. this.controls.characterSelect.pleaseWait.textBox = [];
  592. this.controls.characterSelect.pleaseWait.textBox.pleaseWait = [4,268,300,264,100];
  593. this.controls.characterSelect.pleaseWait.textBox.pleaseWait.key = [5243];
  594.  
  595. this.controls.characterSelect.pleaseWait.button = [];
  596. this.controls.characterSelect.pleaseWait.button.cancel = [6,351,337,96,32];
  597.  
  598. this.controls.characterSelect.pleaseWait.location = [
  599. this.controls.characterSelect.pleaseWait.textBox.pleaseWait,
  600. this.controls.characterSelect.pleaseWait.button.cancel,
  601. ];
  602.  
  603.  
  604. // select gateway (realm)
  605. this.controls.gateway = [];
  606. this.controls.gateway.name = "Select Gateway";
  607. this.controls.gateway.id = 27;
  608. this.controls.gateway.baseX = 285;
  609. this.controls.gateway.baseY = 352;
  610. this.controls.gateway.nextY = 24;
  611.  
  612. this.controls.gateway.textBox = [];
  613. this.controls.gateway.textBox.selectGateway = [4,237,270,340,35];
  614. this.controls.gateway.textBox.ifCurrentGateway = [4,257,345,320,84];
  615. this.controls.gateway.textBox.realmList = [4,257,500,292,160];
  616.  
  617. this.controls.gateway.button = [];
  618. this.controls.gateway.button.ok = [6,281,538,96,32];
  619. this.controls.gateway.button.cancel = [6,436,538,96,32];
  620.  
  621. this.controls.gateway.location = [
  622. this.controls.gateway.textBox.realmList,
  623. this.controls.gateway.button.ok,
  624. this.controls.gateway.button.cancel,
  625. ];
  626.  
  627.  
  628. // getLocation will iterate over these, in this order, do error checkers first
  629. this.locations = [
  630. this.controls.characterSelect.pleaseWait,
  631. this.controls.lobby.gameDoesNotExist,
  632. this.controls.lobby.gameExists,
  633. this.controls.lobby.lostConnection,
  634. this.controls.lobby.pleaseWait,
  635. this.controls.lobby.inLine,
  636. this.controls.lobby.serverDown,
  637. this.controls.characterSelect.realmDown,
  638. this.controls.characterSelect.connecting,
  639. this.controls.characterSelect.disconnected,
  640. this.controls.login.loginError,
  641. this.controls.login.invalidCdkey,
  642. this.controls.login.unableToConnect,
  643. this.controls.login.cdkeyInUse,
  644. this.controls.lobby.create,
  645. this.controls.lobby.join,
  646. // ladder
  647. // channel
  648. this.controls.lobby.chat,
  649. this.controls.lobby,
  650. this.controls.characterSelect.difficulty,
  651. this.controls.characterSelect,
  652. this.controls.login,
  653. this.controls.mainMenu.connecting,
  654. this.controls.gateway,
  655. this.controls.mainMenu,
  656. this.controls.d2Splash,
  657. this.controls.characterCreate,
  658. ];
  659.  
  660. this.gameTypes = [
  661. this.controls.mainMenu.button.singlePlayer,
  662. this.controls.mainMenu.button.battleNet,
  663. this.controls.mainMenu.button.otherMultiplayer,
  664. ];
  665.  
  666. this.gameDifficulties = [
  667. this.controls.lobby.create.button.normal,
  668. this.controls.lobby.create.button.nightmare,
  669. this.controls.lobby.create.button.hell,
  670. ];
  671.  
  672. this.singlePlayerDifficulties = [
  673. this.controls.characterSelect.difficulty.button.normal,
  674. this.controls.characterSelect.difficulty.button.nightmare,
  675. this.controls.characterSelect.difficulty.button.hell,
  676. ];
  677.  
  678. this.clickDelay = 250;
  679. this.textDelay = 100;
  680. this.clickDelayRandom = 0;
  681. this.textDelayRandom = 0;
  682.  
  683. this.realmNames = [];
  684. this.realmNames["U.S. WEST"] = 0;
  685. this.realmNames["U.S. EAST"] = 1;
  686. this.realmNames["ASIA"] = 2;
  687. this.realmNames["EUROPE"] = 3;
  688.  
  689.  
  690. // returns control object if exists, else null
  691. this.get = function( controlArray ) {
  692. var retControl = 0;
  693. if( controlArray && controlArray.length==5 ) {
  694. retControl = getControl( controlArray[0], controlArray[1], controlArray[2], controlArray[3], controlArray[4] );
  695. }
  696. return retControl;
  697. }
  698.  
  699. // clicks object, if it exists, return true if exists, false if not
  700. this.click = function( controlArray, _x, _y, _skipdelay ) {
  701. var control = this.get( controlArray );
  702. if( control ) {
  703. if( _x || _y ) {
  704. control.click( _x, _y );
  705. } else {
  706. control.click( );
  707. }
  708.  
  709. if(!_skipdelay) delay( this.clickDelay + rand( 0, this.clickDelayRandom ) );
  710. return true;
  711. }
  712. return false;
  713. }
  714.  
  715. // sets text on object, returns false if not exists
  716. this.setText = function( controlArray, str ) {
  717. if( controlArray[0]==1 ) {
  718. var control = this.get( controlArray );
  719. if( control ) {
  720. control.setText( str );
  721.  
  722. delay( this.textDelay + rand( 0, this.textDelayRandom ) );
  723. return true;
  724. }
  725. }
  726. return false;
  727. }
  728.  
  729. // clicks a realm entry, this is 0 based! 0 = top entry (uswest)
  730. this.clickRealmEntry = function( realmEntryIndex ) {
  731. this.click( this.controls.gateway.textBox.realmList, 403, 350 + realmEntryIndex * 25);
  732. }
  733.  
  734. // returns the 0 based index of the currently selected realm
  735. this.getCurrentRealmIndex = function( ) {
  736. var retVal = -1;
  737. var control = this.get( controlData.controls.mainMenu.button.gateway );
  738. if(control) {
  739. var realmString = control.text.substring(control.text.indexOf(":")+2, control.text.length);
  740. if(realmString in this.realmNames) retVal = this.realmNames[realmString];
  741. }
  742. return retVal;
  743. }
  744.  
  745. this.getLocation = function( ) {
  746. for(var _i=0; _i<this.locations.length; _i++) {
  747. var found = 0;
  748. for(var _j=0; _j<this.locations[_i].location.length; _j++) {
  749. var control = this.get( this.locations[_i].location[_j] );
  750. if( control && (!this.locations[_i].checkNullText || control.text!=null) ) {
  751. if(this.locations[_i].location[_j].key) {
  752. for(var _k=0; _k<this.locations[_i].location[_j].key.length; _k++) {
  753. var _s = control.getText();
  754. if(_s && getLocaleString(this.locations[_i].location[_j].key[_k]) == String(_s.join(" ")) ) {
  755. found++;
  756. break;
  757. }
  758. }
  759. } else {
  760. found++;
  761. }
  762. }
  763. }
  764. if(found == this.locations[_i].location.length) return this.locations[_i];
  765. }
  766.  
  767. return 0; // no valid location found
  768.  
  769. }
  770.  
  771. // returns the current location, see locations array for listing
  772. this.getLocationQuick = function( ) {
  773. for(var _i=0; _i<this.locations.length; _i++) {
  774. var found = true;
  775. for(var _j=0; _j<this.locations[_i].location.length; _j++) {
  776. var control = this.get( this.locations[_i].location[_j] );
  777. if( !(control) || ( this.locations[_i].checkNullText && control.text==null ) ) {
  778. found = false;
  779. break;
  780. }
  781. }
  782. if(found) return this.locations[_i];
  783. }
  784.  
  785. return 0; // no valid location found
  786. }
  787. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement