Advertisement
Guest User

Untitled

a guest
Jun 25th, 2018
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 127.82 KB | None | 0 0
  1. function loadColAndDff(_ARG_0_, _ARG_1_, _ARG_2_)
  2. engineImportTXD(_ARG_2_, _ARG_0_)
  3. engineReplaceCOL(engineLoadCOL(_ARG_1_ .. ".col"), _ARG_0_)
  4. engineReplaceModel(engineLoadDFF(_ARG_1_ .. ".dff"), _ARG_0_)
  5. end
  6. loadColAndDff({
  7. straight = 9003,
  8. door = 9016,
  9. door2 = 8979,
  10. window = 8980,
  11. base = 8973,
  12. four = 8982,
  13. three = 9000,
  14. two = 9001,
  15. half = 8969,
  16. floor = 9002
  17. }.floor, "files/models/floor", (engineLoadTXD("files/models/wall.txd")))
  18. loadColAndDff({
  19. straight = 9003,
  20. door = 9016,
  21. door2 = 8979,
  22. window = 8980,
  23. base = 8973,
  24. four = 8982,
  25. three = 9000,
  26. two = 9001,
  27. half = 8969,
  28. floor = 9002
  29. }.door, "files/models/door", (engineLoadTXD("files/models/wall.txd")))
  30. loadColAndDff({
  31. straight = 9003,
  32. door = 9016,
  33. door2 = 8979,
  34. window = 8980,
  35. base = 8973,
  36. four = 8982,
  37. three = 9000,
  38. two = 9001,
  39. half = 8969,
  40. floor = 9002
  41. }.two, "files/models/wall", (engineLoadTXD("files/models/wall.txd")))
  42. loadColAndDff({
  43. straight = 9003,
  44. door = 9016,
  45. door2 = 8979,
  46. window = 8980,
  47. base = 8973,
  48. four = 8982,
  49. three = 9000,
  50. two = 9001,
  51. half = 8969,
  52. floor = 9002
  53. }.straight, "files/models/wall2", (engineLoadTXD("files/models/wall.txd")))
  54. loadColAndDff({
  55. straight = 9003,
  56. door = 9016,
  57. door2 = 8979,
  58. window = 8980,
  59. base = 8973,
  60. four = 8982,
  61. three = 9000,
  62. two = 9001,
  63. half = 8969,
  64. floor = 9002
  65. }.four, "files/models/wall3", (engineLoadTXD("files/models/wall.txd")))
  66. loadColAndDff({
  67. straight = 9003,
  68. door = 9016,
  69. door2 = 8979,
  70. window = 8980,
  71. base = 8973,
  72. four = 8982,
  73. three = 9000,
  74. two = 9001,
  75. half = 8969,
  76. floor = 9002
  77. }.three, "files/models/wall4", (engineLoadTXD("files/models/wall.txd")))
  78. loadColAndDff({
  79. straight = 9003,
  80. door = 9016,
  81. door2 = 8979,
  82. window = 8980,
  83. base = 8973,
  84. four = 8982,
  85. three = 9000,
  86. two = 9001,
  87. half = 8969,
  88. floor = 9002
  89. }.base, "files/models/wall5", (engineLoadTXD("files/models/wall.txd")))
  90. loadColAndDff({
  91. straight = 9003,
  92. door = 9016,
  93. door2 = 8979,
  94. window = 8980,
  95. base = 8973,
  96. four = 8982,
  97. three = 9000,
  98. two = 9001,
  99. half = 8969,
  100. floor = 9002
  101. }.half, "files/models/wall6", (engineLoadTXD("files/models/wall.txd")))
  102. loadColAndDff({
  103. straight = 9003,
  104. door = 9016,
  105. door2 = 8979,
  106. window = 8980,
  107. base = 8973,
  108. four = 8982,
  109. three = 9000,
  110. two = 9001,
  111. half = 8969,
  112. floor = 9002
  113. }.window, "files/models/wall7", (engineLoadTXD("files/models/wall.txd")))
  114. loadColAndDff({
  115. straight = 9003,
  116. door = 9016,
  117. door2 = 8979,
  118. window = 8980,
  119. base = 8973,
  120. four = 8982,
  121. three = 9000,
  122. two = 9001,
  123. half = 8969,
  124. floor = 9002
  125. }.door2, "files/models/door2", (engineLoadTXD("files/models/wall.txd")))
  126. loadColAndDff(1786, "files/models/urma4k", (engineLoadTXD("files/models/urma4k.txd")))
  127. loadColAndDff(7027, "files/models/xmas", (engineLoadTXD("files/models/xmas.txd")))
  128. loadColAndDff(2648, "files/models/tv1", (engineLoadTXD("files/models/tv.txd")))
  129. loadColAndDff(14772, "files/models/tv2", (engineLoadTXD("files/models/tv.txd")))
  130. function setElementInteriorAndDimension(_ARG_0_, _ARG_1_)
  131. setElementInterior(_ARG_0_, _ARG_1_)
  132. setElementDimension(_ARG_0_, _UPVALUE0_)
  133. end
  134. function reMap(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_)
  135. return (_ARG_0_ - _ARG_1_) * (_ARG_4_ - _ARG_3_) / (_ARG_2_ - _ARG_1_) + _ARG_3_
  136. end
  137. responsiveMultipler = reMap(guiGetScreenSize())
  138. function resp(_ARG_0_)
  139. return _ARG_0_ * responsiveMultipler
  140. end
  141. function respc(_ARG_0_)
  142. return math.ceil(_ARG_0_ * responsiveMultipler)
  143. end
  144. for _FORV_34_, _FORV_35_ in pairs({
  145. ["H\195\161l\195\179"] = {
  146. 2069,
  147. 2023,
  148. 1416,
  149. 1417,
  150. 1740,
  151. 1741,
  152. 1816,
  153. 2025,
  154. 2087,
  155. 2088,
  156. 2089,
  157. 2094,
  158. 2095,
  159. 2200,
  160. 2307,
  161. 2323,
  162. 2328,
  163. 2329,
  164. 2330,
  165. 2576,
  166. 2708,
  167. 1700,
  168. 1701,
  169. 1745,
  170. 1793,
  171. 1794,
  172. 1795,
  173. 1796,
  174. 1797,
  175. 1798,
  176. 1799,
  177. 1800,
  178. 1801,
  179. 1802,
  180. 1803,
  181. 1812,
  182. 2090,
  183. 2298,
  184. 2299,
  185. 2300,
  186. 2301,
  187. 2302,
  188. 2331,
  189. 2333,
  190. 2563,
  191. 2564,
  192. 2565,
  193. 2566,
  194. 2575,
  195. 14446
  196. },
  197. ["Nappali"] = {
  198. 2571,
  199. 2357,
  200. 2290,
  201. 2239,
  202. 2119,
  203. 2118,
  204. 2117,
  205. 2116,
  206. 2115,
  207. 2109,
  208. 2111,
  209. 2112,
  210. 2108,
  211. 1768,
  212. 1766,
  213. 1764,
  214. 1763,
  215. 1761,
  216. 1760,
  217. 1757,
  218. 1756,
  219. 1753,
  220. 1713,
  221. 1712,
  222. 1710,
  223. 1709,
  224. 1707,
  225. 1706,
  226. 1703,
  227. 1702,
  228. 1742,
  229. 1743,
  230. 1744,
  231. 1754,
  232. 1755,
  233. 1758,
  234. 1759,
  235. 1762,
  236. 1765,
  237. 1767,
  238. 1769,
  239. 1814,
  240. 1815,
  241. 1817,
  242. 1818,
  243. 1819,
  244. 1820,
  245. 1822,
  246. 1823,
  247. 2024,
  248. 2046,
  249. 2078,
  250. 2081,
  251. 2082,
  252. 2083,
  253. 2084,
  254. 2161,
  255. 2162,
  256. 2163,
  257. 2164,
  258. 2167,
  259. 2191,
  260. 2199,
  261. 2200,
  262. 2204,
  263. 2234,
  264. 2235,
  265. 2291,
  266. 2292,
  267. 2295,
  268. 2462,
  269. 1663,
  270. 1671,
  271. 1704,
  272. 1705,
  273. 1708,
  274. 1711,
  275. 1723,
  276. 1724,
  277. 1726,
  278. 1735,
  279. 1806,
  280. 1811,
  281. 1998,
  282. 1999,
  283. 2096,
  284. 2173,
  285. 2180,
  286. 2184,
  287. 2206,
  288. 2311,
  289. 2313,
  290. 2314,
  291. 2315,
  292. 2319,
  293. 2321,
  294. 2346,
  295. 2370,
  296. 11665,
  297. 2699,
  298. 1235
  299. },
  300. ["F\195\188rd\197\145"] = {
  301. 2516,
  302. 2517,
  303. 2518,
  304. 2519,
  305. 2520,
  306. 2521,
  307. 2522,
  308. 2523,
  309. 2524,
  310. 2525,
  311. 2526,
  312. 2527,
  313. 2528,
  314. 1778
  315. },
  316. ["Konyha, \195\169tkez\197\145"] = {
  317. 2109,
  318. 2111,
  319. 2112,
  320. 2031,
  321. 2030,
  322. 2029,
  323. 1770,
  324. 936,
  325. 937,
  326. 941,
  327. 1821,
  328. 2014,
  329. 2015,
  330. 2016,
  331. 2018,
  332. 2019,
  333. 2020,
  334. 2021,
  335. 2022,
  336. 2128,
  337. 2129,
  338. 2133,
  339. 2134,
  340. 2137,
  341. 2138,
  342. 2139,
  343. 2140,
  344. 2141,
  345. 2142,
  346. 2143,
  347. 2145,
  348. 2151,
  349. 2152,
  350. 2153,
  351. 2154,
  352. 2155,
  353. 2156,
  354. 2157,
  355. 2158,
  356. 2159,
  357. 2160,
  358. 2303,
  359. 2304,
  360. 2305,
  361. 2334,
  362. 2335,
  363. 2338,
  364. 2341,
  365. 1432,
  366. 1433,
  367. 1594,
  368. 1720,
  369. 1721,
  370. 1805,
  371. 1810,
  372. 2079,
  373. 2120,
  374. 2121,
  375. 2124,
  376. 2125,
  377. 2350,
  378. 2636,
  379. 2637,
  380. 2644,
  381. 2762,
  382. 2763,
  383. 2764,
  384. 2788,
  385. 2802,
  386. 15036,
  387. 2294,
  388. 2336,
  389. 2337,
  390. 2339,
  391. 2340,
  392. 2127,
  393. 2131,
  394. 2132,
  395. 2135,
  396. 2136,
  397. 2147
  398. },
  399. ["Elektronika"] = {
  400. 1429,
  401. 1747,
  402. 1748,
  403. 1749,
  404. 1750,
  405. 1751,
  406. 1752,
  407. 1781,
  408. 1791,
  409. 1792,
  410. 2296,
  411. 2297,
  412. 14532,
  413. 1719,
  414. 2028,
  415. 2421,
  416. 2149,
  417. 2229,
  418. 2230,
  419. 2231,
  420. 2232,
  421. 2233,
  422. 2099,
  423. 2100,
  424. 2101,
  425. 2226,
  426. 2225,
  427. 2227,
  428. 1782,
  429. 1783,
  430. 1785,
  431. 1787,
  432. 1790,
  433. 2190,
  434. 2238,
  435. 2196,
  436. 2726
  437. },
  438. ["Dekor\195\161ci\195\179"] = {
  439. 7027,
  440. 2724,
  441. 2725,
  442. 3383,
  443. 16151,
  444. 2224,
  445. 2452,
  446. 2627,
  447. 2630,
  448. 2628,
  449. 2629,
  450. 2916,
  451. 2915,
  452. 1585,
  453. 1584,
  454. 1583,
  455. 2484,
  456. 2491,
  457. 2489,
  458. 2490,
  459. 2500,
  460. 2581,
  461. 2584,
  462. 1775,
  463. 1776,
  464. 2743,
  465. 1369,
  466. 3065,
  467. 1985,
  468. 3461,
  469. 3534,
  470. 3385,
  471. 2976,
  472. 1829,
  473. 2778,
  474. 2779,
  475. 2872,
  476. 630,
  477. 631,
  478. 632,
  479. 633,
  480. 638,
  481. 646,
  482. 948,
  483. 949,
  484. 950,
  485. 1361,
  486. 2001,
  487. 2010,
  488. 2011,
  489. 2194,
  490. 2195,
  491. 2240,
  492. 2241,
  493. 2244,
  494. 2251,
  495. 2252,
  496. 2253,
  497. 2811,
  498. 14834
  499. },
  500. ["Pr\195\169mium"] = {
  501. 2332,
  502. 2648,
  503. 14772,
  504. 1786,
  505. 2964
  506. }
  507. }) do
  508. for _FORV_39_ = 1, #_FORV_35_ do
  509. engineSetModelLODDistance(_FORV_35_[_FORV_39_], 300)
  510. end
  511. end
  512. if false then
  513. function photoModeF()
  514. _UPVALUE0_ = {
  515. -5,
  516. -5,
  517. 1000,
  518. 10,
  519. 10
  520. }
  521. setElementInteriorAndDimension(createObject({}[1], 0, 0, 1000), 5)
  522. setElementInteriorAndDimension(localPlayer, 5)
  523. setElementDoubleSided(createObject({}[1], 0, 0, 1000), true)
  524. setTimer(function()
  525. _UPVALUE0_ = {
  526. 0,
  527. 0,
  528. 1000
  529. }
  530. _UPVALUE1_ = math.rad(16.250006705523)
  531. _UPVALUE2_ = math.rad(231.66669209798)
  532. orbitCamera()
  533. end, 500, 1)
  534. addEventHandler("onClientKey", root, function(_ARG_0_, _ARG_1_)
  535. if _ARG_1_ then
  536. if _ARG_0_ == "enter" then
  537. fileWrite(fileCreate("furnitures/" .. _UPVALUE3_[_UPVALUE4_] .. ".png"), (dxConvertPixels(dxGetTexturePixels(_UPVALUE0_, (_UPVALUE1_ - _UPVALUE2_) / 2, 0, _UPVALUE2_, _UPVALUE2_), "png")))
  538. fileClose((fileCreate("furnitures/" .. _UPVALUE3_[_UPVALUE4_] .. ".png")))
  539. elseif _ARG_0_ == "arrow_r" then
  540. if _UPVALUE4_ < #_UPVALUE3_ then
  541. _UPVALUE4_ = _UPVALUE4_ + 1
  542. setElementModel(_UPVALUE5_, _UPVALUE3_[_UPVALUE4_])
  543. end
  544. elseif _ARG_0_ == "arrow_l" then
  545. if _UPVALUE4_ > 0 then
  546. _UPVALUE4_ = _UPVALUE4_ - 1
  547. setElementModel(_UPVALUE5_, _UPVALUE3_[_UPVALUE4_])
  548. end
  549. elseif _ARG_0_ == "pgup" then
  550. _UPVALUE6_ = _UPVALUE6_ + math.rad(90)
  551. orbitCamera()
  552. elseif _ARG_0_ == "arrow_u" then
  553. _UPVALUE7_ = _UPVALUE7_ + 0.1
  554. setElementPosition(_UPVALUE5_, 0, 0, _UPVALUE7_)
  555. elseif _ARG_0_ == "arrow_d" then
  556. _UPVALUE7_ = _UPVALUE7_ - 0.1
  557. setElementPosition(_UPVALUE5_, 0, 0, _UPVALUE7_)
  558. elseif _ARG_0_ == "backspace" then
  559. _UPVALUE8_ = {
  560. 0,
  561. 0,
  562. 1000
  563. }
  564. _UPVALUE7_ = 1000
  565. _UPVALUE9_ = math.rad(16.250006705523)
  566. _UPVALUE6_ = math.rad(231.66669209798)
  567. setElementPosition(_UPVALUE5_, 0, 0, _UPVALUE7_)
  568. orbitCamera()
  569. end
  570. end
  571. end)
  572. addEventHandler("onClientPreRender", root, function(_ARG_0_)
  573. if _UPVALUE0_ then
  574. dxDrawMaterialLine3D((_UPVALUE1_[1] - _UPVALUE1_[4]) * _UPVALUE2_ * 0.75, (_UPVALUE1_[1] - _UPVALUE1_[5]) * _UPVALUE2_ * 0.75, 1300, 0, 0, 700, _UPVALUE3_, 300)
  575. dxDrawMaterialLine3D(300, 0, 990, -300, 0, 990, _UPVALUE3_, 300)
  576. dxUpdateScreenSource(_UPVALUE0_)
  577. if getKeyState("w") then
  578. else
  579. end
  580. if getKeyState("a") then
  581. else
  582. end
  583. if 0 + _ARG_0_ / 1000 or 0 + _ARG_0_ / 1000 then
  584. if getKeyState("lshift") then
  585. if cameraReversed then
  586. end
  587. _UPVALUE4_ = math.deg(_UPVALUE4_) + -(0 + _ARG_0_ / 1000 or 0) * _UPVALUE5_
  588. _UPVALUE6_ = math.deg(_UPVALUE6_) + -(0 + _ARG_0_ / 1000 or 0) * -_UPVALUE5_
  589. if _UPVALUE6_ >= 89.9 then
  590. _UPVALUE6_ = 89.9
  591. end
  592. if _UPVALUE6_ <= 0 then
  593. _UPVALUE6_ = 0
  594. end
  595. _UPVALUE4_ = math.rad(_UPVALUE4_)
  596. _UPVALUE6_ = math.rad(_UPVALUE6_)
  597. orbitCamera()
  598. else
  599. if cameraReversed then
  600. end
  601. _UPVALUE1_[1] = _UPVALUE1_[1] + --(0 + _ARG_0_ / 1000 or 0) * (_UPVALUE5_ * _UPVALUE2_ / 100) * math.cos(_UPVALUE4_) - -(0 + _ARG_0_ / 1000 or 0) * (_UPVALUE5_ * _UPVALUE2_ / 100) * math.sin(_UPVALUE4_)
  602. _UPVALUE1_[2] = _UPVALUE1_[2] + --(0 + _ARG_0_ / 1000 or 0) * (_UPVALUE5_ * _UPVALUE2_ / 100) * math.sin(_UPVALUE4_) + -(0 + _ARG_0_ / 1000 or 0) * (_UPVALUE5_ * _UPVALUE2_ / 100) * math.cos(_UPVALUE4_)
  603. orbitCamera()
  604. end
  605. end
  606. end
  607. end)
  608. addEventHandler("onClientRender", root, function()
  609. if _UPVALUE0_ then
  610. dxDrawImage(0, 0, _UPVALUE1_, _UPVALUE2_, _UPVALUE0_)
  611. dxDrawRectangle(0, 0, (_UPVALUE1_ - _UPVALUE2_) / 2, _UPVALUE2_, tocolor(0, 0, 0, 150))
  612. dxDrawRectangle(_UPVALUE1_ - (_UPVALUE1_ - _UPVALUE2_) / 2, 0, (_UPVALUE1_ - _UPVALUE2_) / 2, _UPVALUE2_, tocolor(0, 0, 0, 150))
  613. end
  614. end, true, "low-999999")
  615. end
  616. addCommandHandler("photomode", photoModeF)
  617. end
  618. function destroyElement(_ARG_0_)
  619. if isElement(_ARG_0_) then
  620. _UPVALUE0_(_ARG_0_)
  621. end
  622. end
  623. for _FORV_58_, _FORV_59_ in pairs({
  624. wall = {
  625. paint = 20,
  626. tile = 20,
  627. wallpaper = 68
  628. },
  629. floor = {
  630. carpet = 21,
  631. tile = 49,
  632. wood = 32
  633. },
  634. window = {normal = 10},
  635. ceil = {normal = 25},
  636. door = {
  637. ["1"] = 5,
  638. ["2"] = 2,
  639. ["3"] = 5,
  640. ["4"] = 7
  641. }
  642. }) do
  643. for _FORV_63_, _FORV_64_ in pairs({
  644. wall = {
  645. paint = 20,
  646. tile = 20,
  647. wallpaper = 68
  648. },
  649. floor = {
  650. carpet = 21,
  651. tile = 49,
  652. wood = 32
  653. },
  654. window = {normal = 10},
  655. ceil = {normal = 25},
  656. door = {
  657. ["1"] = 5,
  658. ["2"] = 2,
  659. ["3"] = 5,
  660. ["4"] = 7
  661. }
  662. }[_FORV_58_]) do
  663. {
  664. [_FORV_58_] = {},
  665. ["furnitures"] = {}
  666. }[_FORV_58_][_FORV_63_] = 0
  667. {
  668. wall = {
  669. paint = 20,
  670. tile = 20,
  671. wallpaper = 68
  672. },
  673. floor = {
  674. carpet = 21,
  675. tile = 49,
  676. wood = 32
  677. },
  678. window = {normal = 10},
  679. ceil = {normal = 25},
  680. door = {
  681. ["1"] = 5,
  682. ["2"] = 2,
  683. ["3"] = 5,
  684. ["4"] = 7
  685. }
  686. }[_FORV_58_][_FORV_63_] = {}
  687. for _FORV_69_ = 1, _FORV_64_ do
  688. {
  689. wall = {
  690. paint = 20,
  691. tile = 20,
  692. wallpaper = 68
  693. },
  694. floor = {
  695. carpet = 21,
  696. tile = 49,
  697. wood = 32
  698. },
  699. window = {normal = 10},
  700. ceil = {normal = 25},
  701. door = {
  702. ["1"] = 5,
  703. ["2"] = 2,
  704. ["3"] = 5,
  705. ["4"] = 7
  706. }
  707. }[_FORV_58_][_FORV_63_][_FORV_69_] = dxCreateTexture("files/" .. _FORV_58_ .. "/" .. _FORV_63_ .. "/" .. _FORV_69_ .. ".png", "DXT1")
  708. end
  709. end
  710. end
  711. for _FORV_60_, _FORV_61_ in ipairs({
  712. "ceil/normal/1/25",
  713. "floor/wood/1/32",
  714. "floor/carpet/1/21",
  715. "floor/tile/1/49",
  716. "wall/paint/1/20",
  717. "wall/wallpaper/1/68",
  718. "wall/tile/1/20",
  719. "window/normal/1/10",
  720. "door/1/1/5",
  721. "door/4/1/7",
  722. "door/3/1/5",
  723. "door/2/1/2"
  724. }) do
  725. for _FORV_66_ = split(_FORV_61_, "/")[3], split(_FORV_61_, "/")[4] do
  726. end
  727. end
  728. for _FORV_60_ = 1, #{
  729. "H\195\161l\195\179",
  730. "Nappali",
  731. "F\195\188rd\197\145",
  732. "Konyha, \195\169tkez\197\145",
  733. "Elektronika",
  734. "Dekor\195\161ci\195\179",
  735. "Pr\195\169mium"
  736. } do
  737. {
  738. [_FORV_58_] = {},
  739. ["furnitures"] = {}
  740. }.furnitures[{
  741. "H\195\161l\195\179",
  742. "Nappali",
  743. "F\195\188rd\197\145",
  744. "Konyha, \195\169tkez\197\145",
  745. "Elektronika",
  746. "Dekor\195\161ci\195\179",
  747. "Pr\195\169mium"
  748. }[_FORV_60_]] = 0
  749. end
  750. smallTextureName = _FOR_
  751. function bigTextureName(_ARG_0_)
  752. return "la_carp" .. _ARG_0_
  753. end
  754. function smallPathName(_ARG_0_)
  755. return _UPVALUE0_[_ARG_0_]
  756. end
  757. function bigPathName(_ARG_0_)
  758. return _UPVALUE0_[tonumber(_ARG_0_)]
  759. end
  760. function getBorders()
  761. _UPVALUE0_[1] = _UPVALUE1_[1]
  762. _UPVALUE0_[2] = _UPVALUE1_[2]
  763. _UPVALUE0_[3] = _UPVALUE1_[1] + _UPVALUE1_[4] * _UPVALUE2_
  764. _UPVALUE0_[4] = _UPVALUE1_[2] + _UPVALUE1_[5] * _UPVALUE2_
  765. end
  766. function createBaseFloors()
  767. for _FORV_3_ = 1, _UPVALUE0_[4] do
  768. for _FORV_7_ = 1, _UPVALUE0_[5] do
  769. setElementInteriorAndDimension(createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3], 0, 90, 0), 1)
  770. table.insert(_UPVALUE3_, (createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3], 0, 90, 0)))
  771. _UPVALUE4_[createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3], 0, 90, 0)] = {_FORV_3_, _FORV_7_}
  772. _UPVALUE5_[_FORV_3_ .. "," .. _FORV_7_] = createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3], 0, 90, 0)
  773. end
  774. end
  775. end
  776. function createBaseCeil()
  777. for _FORV_3_ = 1, _UPVALUE0_[4] do
  778. for _FORV_7_ = 1, _UPVALUE0_[5] do
  779. setElementCollisionsEnabled(createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 3.5, 180, 90, 90), false)
  780. setElementInteriorAndDimension(createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 3.5, 180, 90, 90), 2)
  781. table.insert(_UPVALUE3_, (createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 3.5, 180, 90, 90)))
  782. _UPVALUE4_[createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 3.5, 180, 90, 90)] = {_FORV_3_, _FORV_7_}
  783. _UPVALUE5_[_FORV_3_ .. "," .. _FORV_7_] = createObject(_UPVALUE1_.floor, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_7_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 3.5, 180, 90, 90)
  784. end
  785. end
  786. end
  787. function createBaseWalls()
  788. for _FORV_3_ = 1, _UPVALUE0_[4] do
  789. setElementInteriorAndDimension(createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2], _UPVALUE0_[3] + 1.75, 0, 0, 270), 1)
  790. table.insert(_UPVALUE3_, (createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2], _UPVALUE0_[3] + 1.75, 0, 0, 270)))
  791. _UPVALUE4_[createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2], _UPVALUE0_[3] + 1.75, 0, 0, 270)] = {
  792. _FORV_3_,
  793. 0,
  794. 1
  795. }
  796. _UPVALUE5_[_FORV_3_ .. "," .. 0 .. "," .. 1] = createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2], _UPVALUE0_[3] + 1.75, 0, 0, 270)
  797. end
  798. for _FORV_3_ = 1, _UPVALUE0_[4] do
  799. setElementInteriorAndDimension(createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + _UPVALUE0_[5] * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 90), 1)
  800. table.insert(_UPVALUE3_, (createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + _UPVALUE0_[5] * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 90)))
  801. _UPVALUE4_[createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + _UPVALUE0_[5] * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 90)] = {
  802. _FORV_3_,
  803. _UPVALUE0_[5],
  804. 2
  805. }
  806. _UPVALUE5_[_FORV_3_ .. "," .. _UPVALUE0_[5] .. "," .. 2] = createObject(_UPVALUE1_.base, _UPVALUE0_[1] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[2] + _UPVALUE0_[5] * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 90)
  807. end
  808. for _FORV_3_ = 1, _UPVALUE0_[5] do
  809. setElementInteriorAndDimension(createObject(_UPVALUE1_.base, _UPVALUE0_[1], _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 180), 1)
  810. table.insert(_UPVALUE3_, (createObject(_UPVALUE1_.base, _UPVALUE0_[1], _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 180)))
  811. _UPVALUE4_[createObject(_UPVALUE1_.base, _UPVALUE0_[1], _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 180)] = {
  812. 0,
  813. _FORV_3_,
  814. 3
  815. }
  816. _UPVALUE5_[0 .. "," .. _FORV_3_ .. "," .. 3] = createObject(_UPVALUE1_.base, _UPVALUE0_[1], _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 180)
  817. end
  818. for _FORV_3_ = 1, _UPVALUE0_[5] do
  819. setElementInteriorAndDimension(createObject(_UPVALUE1_.base, _UPVALUE0_[1] + _UPVALUE0_[4] * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 0), 1)
  820. table.insert(_UPVALUE3_, (createObject(_UPVALUE1_.base, _UPVALUE0_[1] + _UPVALUE0_[4] * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 0)))
  821. _UPVALUE4_[createObject(_UPVALUE1_.base, _UPVALUE0_[1] + _UPVALUE0_[4] * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 0)] = {
  822. _UPVALUE0_[4],
  823. _FORV_3_,
  824. 4
  825. }
  826. _UPVALUE5_[_UPVALUE0_[4] .. "," .. _FORV_3_ .. "," .. 4] = createObject(_UPVALUE1_.base, _UPVALUE0_[1] + _UPVALUE0_[4] * _UPVALUE2_, _UPVALUE0_[2] + (_FORV_3_ - 1 + 0.5) * _UPVALUE2_, _UPVALUE0_[3] + 1.75, 0, 0, 0)
  827. end
  828. _FOR_()
  829. createBaseCeil()
  830. end
  831. function getSize()
  832. _UPVALUE1_ = (math.abs(getElementBoundingBox((createObject(_UPVALUE0_.floor, 0, 0, 0)))) + math.abs(getElementBoundingBox((createObject(_UPVALUE0_.floor, 0, 0, 0)))) + math.abs(getElementBoundingBox((createObject(_UPVALUE0_.floor, 0, 0, 0)))) + math.abs(getElementBoundingBox((createObject(_UPVALUE0_.floor, 0, 0, 0))))) / 2
  833. _UPVALUE2_ = math.abs(getElementBoundingBox((createObject(_UPVALUE0_.floor, 0, 0, 0)))) + math.abs(getElementBoundingBox((createObject(_UPVALUE0_.floor, 0, 0, 0))))
  834. createBaseWalls()
  835. getBorders()
  836. end
  837. function orbitCamera()
  838. _UPVALUE3_[4] = math.cos(_UPVALUE1_ + math.rad(180)) * math.cos(_UPVALUE0_ - math.rad(180))
  839. _UPVALUE3_[5] = math.sin(_UPVALUE1_ + math.rad(180)) * math.cos(_UPVALUE0_ - math.rad(180))
  840. _UPVALUE3_[6] = math.sin(_UPVALUE0_ - math.rad(180))
  841. _UPVALUE3_[4] = _UPVALUE3_[1] + _UPVALUE3_[4] * _UPVALUE4_
  842. _UPVALUE3_[5] = _UPVALUE3_[2] + _UPVALUE3_[5] * _UPVALUE4_
  843. _UPVALUE3_[6] = _UPVALUE3_[3] + _UPVALUE3_[6] * _UPVALUE4_
  844. end
  845. function reverseCamera(_ARG_0_)
  846. setActiveFurniture(false)
  847. _UPVALUE0_ = _ARG_0_
  848. if _ARG_0_ then
  849. _UPVALUE1_ = 3.35
  850. _UPVALUE2_ = 3.65
  851. else
  852. _UPVALUE1_ = 0.15
  853. _UPVALUE2_ = -0.15
  854. end
  855. orbitCamera()
  856. end
  857. function first(_ARG_0_)
  858. for _FORV_4_ in pairs(_ARG_0_) do
  859. return _FORV_4_
  860. end
  861. end
  862. function setDaytime(_ARG_0_)
  863. if _ARG_0_ ~= nil then
  864. _UPVALUE0_ = _ARG_0_
  865. else
  866. _UPVALUE0_ = not _UPVALUE0_
  867. end
  868. resetSkyGradient()
  869. keepDaytime()
  870. end
  871. function keepDaytime()
  872. setWeather(4)
  873. if _UPVALUE0_ then
  874. setSkyGradient(93.75, 108.75, 113.25, 93.75, 108.75, 113.25)
  875. setTime(12, 0)
  876. else
  877. setSkyGradient(62.5, 72.5, 75.5, 62.5, 72.5, 75.5)
  878. setTime(0, 0)
  879. end
  880. end
  881. function setWallAlphas(_ARG_0_)
  882. end
  883. function onClientKey(_ARG_0_, _ARG_1_)
  884. if _ARG_0_ == "mouse1" and not _ARG_1_ and _UPVALUE0_ and _UPVALUE0_[8] == true then
  885. if _UPVALUE0_[9] then
  886. _UPVALUE1_ = false
  887. setCursorPosition(_UPVALUE0_[9] + _UPVALUE0_[1], _UPVALUE0_[10] + _UPVALUE0_[2])
  888. end
  889. setCursorAlpha(255)
  890. elseif _UPVALUE2_ ~= "test" then
  891. if _UPVALUE3_ > _UPVALUE4_ - _UPVALUE5_ - _UPVALUE6_ then
  892. if _UPVALUE7_ == "ceil" then
  893. if #_UPVALUE8_.ceil.normal > _UPVALUE9_ then
  894. if _ARG_0_ == "mouse_wheel_up" then
  895. _UPVALUE10_.ceil.normal = _UPVALUE10_.ceil.normal - 1
  896. if _UPVALUE10_.ceil.normal < 0 then
  897. _UPVALUE10_.ceil.normal = 0
  898. end
  899. elseif _ARG_0_ == "mouse_wheel_down" then
  900. _UPVALUE10_.ceil.normal = _UPVALUE10_.ceil.normal + 1
  901. if _UPVALUE10_.ceil.normal > #_UPVALUE8_.ceil.normal - _UPVALUE9_ then
  902. _UPVALUE10_.ceil.normal = #_UPVALUE8_.ceil.normal - _UPVALUE9_
  903. end
  904. end
  905. end
  906. elseif _UPVALUE11_ == "walls" and _UPVALUE7_ ~= "drawing" then
  907. if #_UPVALUE8_.wall[_UPVALUE7_] > _UPVALUE9_ then
  908. if _ARG_0_ == "mouse_wheel_up" then
  909. _UPVALUE10_.wall[_UPVALUE7_] = _UPVALUE10_.wall[_UPVALUE7_] - 1
  910. if 0 > _UPVALUE10_.wall[_UPVALUE7_] then
  911. _UPVALUE10_.wall[_UPVALUE7_] = 0
  912. end
  913. elseif _ARG_0_ == "mouse_wheel_down" then
  914. _UPVALUE10_.wall[_UPVALUE7_] = _UPVALUE10_.wall[_UPVALUE7_] + 1
  915. if _UPVALUE10_.wall[_UPVALUE7_] > #_UPVALUE8_.wall[_UPVALUE7_] - _UPVALUE9_ then
  916. _UPVALUE10_.wall[_UPVALUE7_] = #_UPVALUE8_.wall[_UPVALUE7_] - _UPVALUE9_
  917. end
  918. end
  919. end
  920. elseif _UPVALUE11_ == "furnitures" then
  921. if #_UPVALUE12_[_UPVALUE7_] > _UPVALUE9_ then
  922. if _ARG_0_ == "mouse_wheel_up" then
  923. _UPVALUE10_.furnitures[_UPVALUE7_] = _UPVALUE10_.furnitures[_UPVALUE7_] - 1
  924. if 0 > _UPVALUE10_.furnitures[_UPVALUE7_] then
  925. _UPVALUE10_.furnitures[_UPVALUE7_] = 0
  926. end
  927. elseif _ARG_0_ == "mouse_wheel_down" then
  928. _UPVALUE10_.furnitures[_UPVALUE7_] = _UPVALUE10_.furnitures[_UPVALUE7_] + 1
  929. if _UPVALUE10_.furnitures[_UPVALUE7_] > #_UPVALUE12_[_UPVALUE7_] - _UPVALUE9_ then
  930. _UPVALUE10_.furnitures[_UPVALUE7_] = #_UPVALUE12_[_UPVALUE7_] - _UPVALUE9_
  931. end
  932. end
  933. end
  934. elseif _UPVALUE11_ == "floors" then
  935. if #_UPVALUE8_.floor[_UPVALUE7_] > _UPVALUE9_ then
  936. if _ARG_0_ == "mouse_wheel_up" then
  937. _UPVALUE10_.floor[_UPVALUE7_] = _UPVALUE10_.floor[_UPVALUE7_] - 1
  938. if 0 > _UPVALUE10_.floor[_UPVALUE7_] then
  939. _UPVALUE10_.floor[_UPVALUE7_] = 0
  940. end
  941. elseif _ARG_0_ == "mouse_wheel_down" then
  942. _UPVALUE10_.floor[_UPVALUE7_] = _UPVALUE10_.floor[_UPVALUE7_] + 1
  943. if _UPVALUE10_.floor[_UPVALUE7_] > #_UPVALUE8_.floor[_UPVALUE7_] - _UPVALUE9_ then
  944. _UPVALUE10_.floor[_UPVALUE7_] = #_UPVALUE8_.floor[_UPVALUE7_] - _UPVALUE9_
  945. end
  946. end
  947. end
  948. elseif _UPVALUE7_ == "windows" then
  949. if #_UPVALUE8_.window.normal > _UPVALUE9_ then
  950. if _ARG_0_ == "mouse_wheel_up" then
  951. _UPVALUE10_.window.normal = _UPVALUE10_.window.normal - 1
  952. if 0 > _UPVALUE10_.window.normal then
  953. _UPVALUE10_.window.normal = 0
  954. end
  955. elseif _ARG_0_ == "mouse_wheel_down" then
  956. _UPVALUE10_.window.normal = _UPVALUE10_.window.normal + 1
  957. if _UPVALUE10_.window.normal > #_UPVALUE8_.window.normal - _UPVALUE9_ then
  958. _UPVALUE10_.window.normal = #_UPVALUE8_.window.normal - _UPVALUE9_
  959. end
  960. end
  961. end
  962. elseif _UPVALUE7_ == "doors" and #_UPVALUE8_.door["1"] + #_UPVALUE8_.door["2"] + #_UPVALUE8_.door["3"] + #_UPVALUE8_.door["4"] + 4 + 1 > _UPVALUE9_ then
  963. if _ARG_0_ == "mouse_wheel_up" then
  964. _UPVALUE10_.door["1"] = _UPVALUE10_.door["1"] - 1
  965. if 0 > _UPVALUE10_.door["1"] then
  966. _UPVALUE10_.door["1"] = 0
  967. end
  968. elseif _ARG_0_ == "mouse_wheel_down" then
  969. _UPVALUE10_.door["1"] = _UPVALUE10_.door["1"] + 1
  970. if _UPVALUE10_.door["1"] > #_UPVALUE8_.door["1"] + #_UPVALUE8_.door["2"] + #_UPVALUE8_.door["3"] + #_UPVALUE8_.door["4"] + 4 + 1 - _UPVALUE9_ then
  971. _UPVALUE10_.door["1"] = #_UPVALUE8_.door["1"] + #_UPVALUE8_.door["2"] + #_UPVALUE8_.door["3"] + #_UPVALUE8_.door["4"] + 4 + 1 - _UPVALUE9_
  972. end
  973. end
  974. end
  975. elseif _ARG_0_ == "mouse_wheel_up" then
  976. _UPVALUE13_ = _UPVALUE13_ - 1
  977. if _UPVALUE13_ < 3 then
  978. _UPVALUE13_ = 3
  979. end
  980. _UPVALUE14_ = 2 * _UPVALUE13_ / 25
  981. orbitCamera()
  982. elseif _ARG_0_ == "mouse_wheel_down" then
  983. _UPVALUE13_ = _UPVALUE13_ + 1
  984. if _UPVALUE13_ > 75 then
  985. _UPVALUE13_ = 75
  986. end
  987. _UPVALUE14_ = 2 * _UPVALUE13_ / 25
  988. orbitCamera()
  989. elseif (_ARG_0_ == "mouse2" or _ARG_0_ == "mouse3" or _ARG_0_ == "mouse1" and getKeyState("lshift")) and _ARG_1_ then
  990. setCursorAlpha(0)
  991. _UPVALUE1_ = {
  992. getCursorPosition()
  993. }
  994. _UPVALUE15_ = {
  995. getCursorPosition() * _UPVALUE16_,
  996. getCursorPosition() * _UPVALUE4_
  997. }
  998. elseif (_ARG_0_ == "mouse2" or _ARG_0_ == "mouse3" or _ARG_0_ == "mouse1" or _ARG_0_ == "lshift") and not _ARG_1_ and _UPVALUE15_ and not getKeyStateEx() then
  999. setCursorAlpha(255)
  1000. _UPVALUE1_ = false
  1001. setCursorPosition(unpack(_UPVALUE15_))
  1002. _UPVALUE15_ = false
  1003. end
  1004. end
  1005. end
  1006. function coordToTile(_ARG_0_, _ARG_1_, _ARG_2_)
  1007. _ARG_0_ = _ARG_0_ * 2
  1008. _ARG_1_ = _ARG_1_ * 2
  1009. if _ARG_2_ == 4 or _ARG_2_ == 5 then
  1010. _ARG_0_ = _ARG_0_ + 1
  1011. end
  1012. if _ARG_2_ == 6 or _ARG_2_ == 5 then
  1013. _ARG_1_ = _ARG_1_ + 1
  1014. end
  1015. return _ARG_0_, _ARG_1_
  1016. end
  1017. function tileToCoord(_ARG_0_, _ARG_1_)
  1018. if _ARG_0_ % 2 == 1 and _ARG_1_ % 2 == 1 then
  1019. elseif _ARG_0_ % 2 == 1 then
  1020. else
  1021. end
  1022. _ARG_0_ = math.floor(_ARG_0_ / 2)
  1023. _ARG_1_ = math.floor(_ARG_1_ / 2)
  1024. return _ARG_0_, _ARG_1_, 6
  1025. end
  1026. function loopTiles(_ARG_0_)
  1027. if _UPVALUE0_ == _UPVALUE1_ and _UPVALUE2_ == _UPVALUE3_ and _UPVALUE4_ == _UPVALUE5_ then
  1028. _ARG_0_(_UPVALUE0_, _UPVALUE2_, _UPVALUE4_)
  1029. else
  1030. for _FORV_12_ = math.min(coordToTile(_UPVALUE0_, _UPVALUE2_, _UPVALUE4_)), math.max(coordToTile(_UPVALUE0_, _UPVALUE2_, _UPVALUE4_)) do
  1031. for _FORV_16_ = math.min(coordToTile(_UPVALUE0_, _UPVALUE2_, _UPVALUE4_)), math.max(coordToTile(_UPVALUE0_, _UPVALUE2_, _UPVALUE4_)) do
  1032. _ARG_0_(tileToCoord(_FORV_12_, _FORV_16_))
  1033. end
  1034. end
  1035. end
  1036. end
  1037. function coordToTile2(_ARG_0_, _ARG_1_)
  1038. _ARG_0_ = _ARG_0_ * 2
  1039. if _ARG_1_ == 3 or _ARG_1_ == 4 then
  1040. _ARG_0_ = _ARG_0_ + 1
  1041. end
  1042. return _ARG_0_
  1043. end
  1044. function tileToCoord2(_ARG_0_, _ARG_1_)
  1045. if _ARG_1_ == "x" then
  1046. if _ARG_0_ % 2 == 1 then
  1047. else
  1048. end
  1049. elseif 1 == 1 then
  1050. else
  1051. end
  1052. _ARG_0_ = math.floor(_ARG_0_ / 2)
  1053. return _ARG_0_, 2
  1054. end
  1055. function loopTiles2(_ARG_0_)
  1056. if _UPVALUE0_ == _UPVALUE1_ and _UPVALUE2_ == _UPVALUE3_ and _UPVALUE4_ == _UPVALUE5_ then
  1057. _ARG_0_(_UPVALUE0_, _UPVALUE0_)
  1058. else
  1059. if _UPVALUE6_ == "y" then
  1060. end
  1061. _ARG_0_(math.min(coordToTile2(_UPVALUE2_, _UPVALUE4_), (coordToTile2(_UPVALUE3_, _UPVALUE5_))), (math.max(coordToTile2(_UPVALUE2_, _UPVALUE4_), (coordToTile2(_UPVALUE3_, _UPVALUE5_)))))
  1062. end
  1063. end
  1064. function activizeTile(_ARG_0_, _ARG_1_, _ARG_2_)
  1065. _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_ .. "," .. _ARG_2_] = true
  1066. end
  1067. function activizeTile2(_ARG_0_, _ARG_1_)
  1068. if _ARG_0_ == _ARG_1_ then
  1069. activizeTile(_UPVALUE0_, _UPVALUE1_, _UPVALUE2_)
  1070. if _UPVALUE3_ ~= _UPVALUE4_ or _UPVALUE5_ ~= _UPVALUE6_ then
  1071. playSoundEx("files/sound/greenline.mp3")
  1072. _UPVALUE4_ = _UPVALUE3_
  1073. _UPVALUE6_ = _UPVALUE5_
  1074. end
  1075. else
  1076. if _ARG_0_ ~= _UPVALUE4_ or _ARG_1_ ~= _UPVALUE6_ then
  1077. playSoundEx("files/sound/greenline.mp3")
  1078. _UPVALUE4_ = _ARG_0_
  1079. _UPVALUE6_ = _ARG_1_
  1080. end
  1081. for _FORV_5_ = _ARG_0_, _ARG_1_ do
  1082. if _UPVALUE7_ == "x" then
  1083. activizeTile(tileToCoord2(_FORV_5_, _UPVALUE7_))
  1084. else
  1085. activizeTile(_UPVALUE0_, tileToCoord2(_FORV_5_, _UPVALUE7_))
  1086. end
  1087. end
  1088. end
  1089. end
  1090. function placeLineWalls(_ARG_0_, _ARG_1_)
  1091. if _ARG_0_ == _ARG_1_ then
  1092. if _UPVALUE0_ == 3 then
  1093. createWall(_UPVALUE1_, _UPVALUE2_, 270, true)
  1094. elseif _UPVALUE0_ == 1 then
  1095. createWall(_UPVALUE1_, _UPVALUE2_, 90, true)
  1096. elseif _UPVALUE0_ == 2 then
  1097. createWall(_UPVALUE1_, _UPVALUE2_, 180, true)
  1098. elseif _UPVALUE0_ == 4 then
  1099. createWall(_UPVALUE1_, _UPVALUE2_, 0, true)
  1100. end
  1101. playSoundEx("files/sound/construct" .. math.random(2) .. ".mp3")
  1102. else
  1103. if tileToCoord2(_ARG_1_, _UPVALUE3_) == 1 or tileToCoord2(_ARG_1_, _UPVALUE3_) == 2 then
  1104. _ARG_1_ = _ARG_1_ - 1
  1105. if _UPVALUE3_ == "x" then
  1106. createWall(tileToCoord2(_ARG_1_, _UPVALUE3_))
  1107. else
  1108. createWall(_UPVALUE5_, tileToCoord2(_ARG_1_, _UPVALUE3_))
  1109. end
  1110. end
  1111. if tileToCoord2(_ARG_0_, _UPVALUE3_) == 3 or tileToCoord2(_ARG_0_, _UPVALUE3_) == 4 then
  1112. _ARG_0_ = _ARG_0_ + 1
  1113. if _UPVALUE3_ == "x" then
  1114. createWall(tileToCoord2(_ARG_0_, _UPVALUE3_))
  1115. else
  1116. createWall(_UPVALUE5_, tileToCoord2(_ARG_0_, _UPVALUE3_))
  1117. end
  1118. end
  1119. for _FORV_9_ = _ARG_0_ / 2, _ARG_1_ / 2 do
  1120. if _UPVALUE3_ == "x" then
  1121. createWall(_FORV_9_, _UPVALUE4_, 90)
  1122. else
  1123. createWall(_UPVALUE5_, _FORV_9_, 0)
  1124. end
  1125. end
  1126. playSoundEx("files/sound/construct" .. math.random(2) .. ".mp3")
  1127. end
  1128. end
  1129. function applyTileTexture(_ARG_0_, _ARG_1_, _ARG_2_)
  1130. applyTextureToElement(_UPVALUE1_[_ARG_0_ .. "," .. _ARG_1_], "la_carp" .. _ARG_2_, "floor", unpack(split(_UPVALUE0_, "/")))
  1131. end
  1132. function applyCeilTexture(_ARG_0_, _ARG_1_, _ARG_2_)
  1133. if _ARG_2_ == 6 then
  1134. _ARG_2_ = 4
  1135. elseif _ARG_2_ == 4 then
  1136. _ARG_2_ = 6
  1137. end
  1138. applyTextureToElement(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], "la_carp" .. _ARG_2_, "ceil", "normal", tonumber(_UPVALUE1_))
  1139. end
  1140. function getKeyStateEx()
  1141. return getKeyState("mouse1") and getKeyState("lshift") or getKeyState("mouse3")
  1142. end
  1143. function onClientCursorMove(_ARG_0_, _ARG_1_)
  1144. if _ARG_0_ and _ARG_1_ then
  1145. if getKeyState("mouse1") then
  1146. if _UPVALUE0_ == "setWallpaper" then
  1147. if _UPVALUE1_ then
  1148. textureSide()
  1149. end
  1150. elseif _UPVALUE0_ == "setFloor" then
  1151. _UPVALUE2_ = {}
  1152. if _UPVALUE3_ and _UPVALUE4_ then
  1153. loopTiles(activizeTile)
  1154. if _UPVALUE4_ ~= _UPVALUE5_ or _UPVALUE6_ ~= _UPVALUE7_ then
  1155. playSoundEx("files/sound/greenline.mp3")
  1156. _UPVALUE5_ = _UPVALUE4_
  1157. _UPVALUE7_ = _UPVALUE6_
  1158. end
  1159. end
  1160. elseif _UPVALUE0_ == "setCeil" then
  1161. _UPVALUE2_ = {}
  1162. if _UPVALUE3_ and _UPVALUE4_ then
  1163. loopTiles(activizeTile)
  1164. if _UPVALUE4_ ~= _UPVALUE5_ or _UPVALUE6_ ~= _UPVALUE7_ then
  1165. playSoundEx("files/sound/greenline.mp3")
  1166. _UPVALUE5_ = _UPVALUE4_
  1167. _UPVALUE7_ = _UPVALUE6_
  1168. end
  1169. end
  1170. elseif _UPVALUE0_ == "drawWall_line" and _UPVALUE8_ or _UPVALUE0_ == "drawWall_rect" or _UPVALUE0_ == "deleteWall_line" and _UPVALUE8_ or _UPVALUE0_ == "deleteWall_rect" then
  1171. _UPVALUE2_ = {}
  1172. if _UPVALUE3_ and _UPVALUE4_ then
  1173. if _UPVALUE0_ == "drawWall_rect" then
  1174. if _UPVALUE4_ ~= _UPVALUE5_ or _UPVALUE6_ ~= _UPVALUE7_ then
  1175. playSoundEx("files/sound/greenline.mp3")
  1176. _UPVALUE5_ = _UPVALUE4_
  1177. _UPVALUE7_ = _UPVALUE6_
  1178. end
  1179. if _UPVALUE4_ == _UPVALUE3_ or _UPVALUE6_ == _UPVALUE9_ then
  1180. for _FORV_9_ = 1, 4 do
  1181. _UPVALUE2_[_UPVALUE3_ .. "," .. _UPVALUE9_ .. "," .. _FORV_9_] = true
  1182. end
  1183. else
  1184. if math.min(_UPVALUE9_, _UPVALUE6_) - 1 > 0 then
  1185. for _FORV_9_ = math.min(_UPVALUE3_, _UPVALUE4_), math.max(_UPVALUE3_, _UPVALUE4_) do
  1186. _UPVALUE2_[_FORV_9_ .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = true
  1187. _UPVALUE2_[_FORV_9_ .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = true
  1188. end
  1189. end
  1190. if math.max(_UPVALUE9_, _UPVALUE6_) < _FOR_[5] then
  1191. for _FORV_9_ = math.min(_UPVALUE3_, _UPVALUE4_), math.max(_UPVALUE3_, _UPVALUE4_) do
  1192. _UPVALUE2_[_FORV_9_ .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = true
  1193. _UPVALUE2_[_FORV_9_ .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = true
  1194. end
  1195. end
  1196. if _FOR_ > 0 then
  1197. for _FORV_9_ = math.min(_UPVALUE9_, _UPVALUE6_), math.max(_UPVALUE9_, _UPVALUE6_) do
  1198. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. _FORV_9_ .. "," .. 2] = true
  1199. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. _FORV_9_ .. "," .. 4] = true
  1200. end
  1201. end
  1202. if math.max(_UPVALUE3_, _UPVALUE4_) < _FOR_[4] then
  1203. for _FORV_9_ = math.min(_UPVALUE9_, _UPVALUE6_), math.max(_UPVALUE9_, _UPVALUE6_) do
  1204. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. _FORV_9_ .. "," .. 2] = true
  1205. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. _FORV_9_ .. "," .. 4] = true
  1206. end
  1207. end
  1208. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 4] = false
  1209. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = false
  1210. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = false
  1211. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 2] = false
  1212. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 4] = false
  1213. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = false
  1214. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = false
  1215. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 2] = false
  1216. if math.min(_UPVALUE9_, _UPVALUE6_) - 1 <= 0 then
  1217. if math.min(_UPVALUE3_, _UPVALUE4_) - 1 > 0 then
  1218. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 2] = true
  1219. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 4] = true
  1220. end
  1221. if math.max(_UPVALUE3_, _UPVALUE4_) < _UPVALUE10_[4] then
  1222. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 2] = true
  1223. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 4] = true
  1224. end
  1225. end
  1226. if math.max(_UPVALUE9_, _UPVALUE6_) >= _UPVALUE10_[5] then
  1227. if math.min(_UPVALUE3_, _UPVALUE4_) - 1 > 0 then
  1228. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 2] = true
  1229. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 4] = true
  1230. end
  1231. if math.max(_UPVALUE3_, _UPVALUE4_) < _UPVALUE10_[4] then
  1232. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 2] = true
  1233. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 4] = true
  1234. end
  1235. end
  1236. if math.min(_UPVALUE3_, _UPVALUE4_) - 1 <= 0 then
  1237. if math.min(_UPVALUE9_, _UPVALUE6_) - 1 > 0 then
  1238. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = true
  1239. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = true
  1240. end
  1241. if math.max(_UPVALUE9_, _UPVALUE6_) < _UPVALUE10_[5] then
  1242. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = true
  1243. _UPVALUE2_[math.min(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = true
  1244. end
  1245. end
  1246. if math.max(_UPVALUE3_, _UPVALUE4_) >= _UPVALUE10_[4] then
  1247. if math.min(_UPVALUE9_, _UPVALUE6_) - 1 > 0 then
  1248. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = true
  1249. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.min(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = true
  1250. end
  1251. if math.max(_UPVALUE9_, _UPVALUE6_) < _UPVALUE10_[5] then
  1252. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 3] = true
  1253. _UPVALUE2_[math.max(_UPVALUE3_, _UPVALUE4_) .. "," .. math.max(_UPVALUE9_, _UPVALUE6_) .. "," .. 1] = true
  1254. end
  1255. end
  1256. end
  1257. elseif _UPVALUE0_ == "deleteWall_rect" then
  1258. if _UPVALUE4_ ~= _UPVALUE5_ or _UPVALUE6_ ~= _UPVALUE7_ then
  1259. playSoundEx("files/sound/greenline.mp3")
  1260. _UPVALUE5_ = _UPVALUE4_
  1261. _UPVALUE7_ = _UPVALUE6_
  1262. end
  1263. for _FORV_9_ = math.min(_UPVALUE3_, _UPVALUE4_), math.max(_UPVALUE3_, _UPVALUE4_) do
  1264. for _FORV_13_ = math.min(_UPVALUE9_, _UPVALUE6_), math.max(_UPVALUE9_, _UPVALUE6_) do
  1265. for _FORV_17_ = 1, 4 do
  1266. _UPVALUE2_[_FORV_9_ .. "," .. _FORV_13_ .. "," .. _FORV_17_] = true
  1267. end
  1268. end
  1269. end
  1270. else
  1271. loopTiles2(activizeTile2)
  1272. end
  1273. end
  1274. end
  1275. end
  1276. if _UPVALUE11_ and _UPVALUE11_[8] and _UPVALUE12_ and _UPVALUE13_ and _UPVALUE13_[2] then
  1277. _ARG_1_ = _ARG_1_ - _UPVALUE13_[2]
  1278. setCursorPosition(_UPVALUE14_ / 2, _UPVALUE15_ / 2)
  1279. _UPVALUE13_ = {0.5, 0.5}
  1280. if _UPVALUE11_[7] - _ARG_1_ * _UPVALUE16_ * 0.75 < _UPVALUE10_[3] - 3.5 then
  1281. end
  1282. if _UPVALUE10_[3] - 3.5 > _UPVALUE10_[3] + 7 then
  1283. end
  1284. _UPVALUE11_[7] = _UPVALUE10_[3] + 7
  1285. elseif (getKeyState("mouse2") or getKeyStateEx()) and _UPVALUE13_ and _UPVALUE13_[1] then
  1286. _ARG_0_ = _ARG_0_ - _UPVALUE13_[1]
  1287. _ARG_1_ = _ARG_1_ - _UPVALUE13_[2]
  1288. _ARG_0_ = _ARG_0_ * (_UPVALUE14_ / _UPVALUE15_)
  1289. if _UPVALUE17_ then
  1290. if not getKeyState("mouse2") then
  1291. _ARG_0_ = -_ARG_0_
  1292. end
  1293. _ARG_1_ = -_ARG_1_
  1294. end
  1295. setCursorPosition(_UPVALUE14_ / 2, _UPVALUE15_ / 2)
  1296. _UPVALUE13_ = {0.5, 0.5}
  1297. if getKeyStateEx() then
  1298. _UPVALUE18_ = math.deg(_UPVALUE18_) + _ARG_0_ * _UPVALUE16_
  1299. _UPVALUE19_ = math.deg(_UPVALUE19_) + _ARG_1_ * -_UPVALUE16_
  1300. if _UPVALUE19_ >= 89.9 then
  1301. _UPVALUE19_ = 89.9
  1302. end
  1303. if _UPVALUE19_ <= 0 then
  1304. _UPVALUE19_ = 0
  1305. end
  1306. _UPVALUE18_ = math.rad(_UPVALUE18_)
  1307. _UPVALUE19_ = math.rad(_UPVALUE19_)
  1308. orbitCamera()
  1309. else
  1310. _UPVALUE21_[1] = _UPVALUE21_[1] + _ARG_1_ * (_UPVALUE16_ * _UPVALUE20_ / 100) * math.cos(_UPVALUE18_) - _ARG_0_ * (_UPVALUE16_ * _UPVALUE20_ / 100) * math.sin(_UPVALUE18_)
  1311. _UPVALUE21_[2] = _UPVALUE21_[2] + _ARG_1_ * (_UPVALUE16_ * _UPVALUE20_ / 100) * math.sin(_UPVALUE18_) + _ARG_0_ * (_UPVALUE16_ * _UPVALUE20_ / 100) * math.cos(_UPVALUE18_)
  1312. if not _UPVALUE22_ then
  1313. if _UPVALUE21_[1] < _UPVALUE23_[1] then
  1314. _UPVALUE21_[1] = _UPVALUE23_[1]
  1315. end
  1316. if _UPVALUE21_[2] < _UPVALUE23_[2] then
  1317. _UPVALUE21_[2] = _UPVALUE23_[2]
  1318. end
  1319. if _UPVALUE21_[1] > _UPVALUE23_[3] then
  1320. _UPVALUE21_[1] = _UPVALUE23_[3]
  1321. end
  1322. if _UPVALUE21_[2] > _UPVALUE23_[4] then
  1323. _UPVALUE21_[2] = _UPVALUE23_[4]
  1324. end
  1325. end
  1326. orbitCamera()
  1327. end
  1328. end
  1329. end
  1330. end
  1331. function getCursorPositionEx()
  1332. if _UPVALUE0_ then
  1333. return unpack(_UPVALUE0_)
  1334. elseif getCursorPosition() then
  1335. return getCursorPosition() * _UPVALUE1_, getCursorPosition() * _UPVALUE2_
  1336. else
  1337. return -1, -1
  1338. end
  1339. end
  1340. function floorMode(_ARG_0_)
  1341. for _FORV_4_ = 1, #_UPVALUE0_ do
  1342. setElementCollisionsEnabled(_UPVALUE0_[_FORV_4_], not _ARG_0_)
  1343. end
  1344. for _FORV_4_ = 1, #_UPVALUE1_ do
  1345. setElementCollisionsEnabled(_UPVALUE1_[_FORV_4_], not _ARG_0_)
  1346. end
  1347. for _FORV_4_, _FORV_5_ in pairs(_UPVALUE2_) do
  1348. setElementCollisionsEnabled(_FORV_4_, not _ARG_0_)
  1349. end
  1350. for _FORV_4_, _FORV_5_ in pairs(_UPVALUE3_) do
  1351. setElementCollisionsEnabled(_FORV_5_, not _ARG_0_)
  1352. end
  1353. end
  1354. function setMode(_ARG_0_)
  1355. if (_ARG_0_ == "drawWall_line" or _ARG_0_ == "drawWall_rect" or _ARG_0_ == "setWindow" or _ARG_0_ == "setDoor") and #getElementsByType("object", getRootElement(), true) >= _UPVALUE0_ then
  1356. exports.sas_accounts:showInfo("e", "El\195\169rted a maxim\195\161lis objektumsz\195\161mot! (" .. #getElementsByType("object", getRootElement(), true) .. "/" .. _UPVALUE0_ .. " db)")
  1357. return
  1358. end
  1359. if _ARG_0_ ~= _UPVALUE1_ then
  1360. setActiveFurniture(false)
  1361. _UPVALUE2_ = false
  1362. end
  1363. if _UPVALUE1_ == "drawWall_line" or _UPVALUE1_ == "drawWall_rect" then
  1364. _UPVALUE3_, _UPVALUE4_ = false, false
  1365. _UPVALUE5_ = false
  1366. _UPVALUE6_, _UPVALUE7_ = false, false
  1367. _UPVALUE8_ = {}
  1368. _UPVALUE9_ = false
  1369. setWallAlphas()
  1370. _UPVALUE10_ = _UPVALUE11_
  1371. _UPVALUE11_ = false
  1372. _UPVALUE12_ = true
  1373. floorMode(false)
  1374. elseif _UPVALUE1_ == "deleteWall_line" or _UPVALUE1_ == "deleteWall_rect" then
  1375. _UPVALUE3_, _UPVALUE4_ = false, false
  1376. _UPVALUE5_ = false
  1377. _UPVALUE6_, _UPVALUE7_ = false, false
  1378. _UPVALUE8_ = {}
  1379. _UPVALUE9_ = false
  1380. setWallAlphas()
  1381. _UPVALUE10_ = _UPVALUE11_
  1382. _UPVALUE11_ = false
  1383. _UPVALUE12_ = true
  1384. floorMode(false)
  1385. elseif _UPVALUE1_ == "setWallpaper" then
  1386. for _FORV_4_ = 1, #_UPVALUE13_ do
  1387. setElementCollisionsEnabled(_UPVALUE13_[_FORV_4_], true)
  1388. end
  1389. placedDoor = _FOR_
  1390. setWallAlphas()
  1391. _UPVALUE14_ = false
  1392. _UPVALUE15_ = false
  1393. elseif _UPVALUE1_ == "setWindow" then
  1394. for _FORV_4_ = 1, #_UPVALUE16_ do
  1395. setElementCollisionsEnabled(_UPVALUE16_[_FORV_4_], true)
  1396. end
  1397. placedDoor = _FOR_
  1398. setWallAlphas()
  1399. unuseWindowHover()
  1400. _UPVALUE15_ = false
  1401. elseif _UPVALUE1_ == "deleteWindow" then
  1402. for _FORV_4_ = 1, #_UPVALUE16_ do
  1403. setElementCollisionsEnabled(_UPVALUE16_[_FORV_4_], true)
  1404. end
  1405. placedDoor = _FOR_
  1406. setWallAlphas()
  1407. unuseWindowHover()
  1408. elseif _UPVALUE1_ == "deleteDoor" then
  1409. for _FORV_4_ = 1, #_UPVALUE17_ do
  1410. setElementCollisionsEnabled(_UPVALUE17_[_FORV_4_], true)
  1411. end
  1412. placedDoor = _FOR_
  1413. setWallAlphas()
  1414. unuseWindowHover()
  1415. elseif _UPVALUE1_ == "setDoor" then
  1416. placedDoor = false
  1417. setWallAlphas()
  1418. unuseDoorHover()
  1419. _UPVALUE15_ = false
  1420. elseif _UPVALUE1_ == "setFloor" then
  1421. _UPVALUE6_, _UPVALUE7_ = false, false
  1422. _UPVALUE5_ = false
  1423. _UPVALUE3_, _UPVALUE4_ = false, false
  1424. _UPVALUE18_ = 3
  1425. placedDoor = false
  1426. setWallAlphas()
  1427. _UPVALUE8_ = {}
  1428. _UPVALUE14_ = false
  1429. _UPVALUE15_ = false
  1430. _UPVALUE10_ = _UPVALUE11_
  1431. _UPVALUE11_ = false
  1432. _UPVALUE12_ = true
  1433. floorMode(false)
  1434. elseif _UPVALUE1_ == "placeFurniture" then
  1435. destroyElement(_UPVALUE19_)
  1436. _UPVALUE19_ = false
  1437. _UPVALUE20_ = false
  1438. _UPVALUE21_ = _UPVALUE22_
  1439. _UPVALUE23_ = _UPVALUE24_ * _UPVALUE21_ + _UPVALUE25_ * (_UPVALUE21_ + 2)
  1440. _UPVALUE26_ = math.ceil((_UPVALUE27_ - _UPVALUE28_ - _UPVALUE29_) / 2 - _UPVALUE23_ / 2)
  1441. elseif _UPVALUE1_ == "setCeil" then
  1442. _UPVALUE6_, _UPVALUE7_ = false, false
  1443. _UPVALUE5_ = false
  1444. _UPVALUE3_, _UPVALUE4_ = false, false
  1445. _UPVALUE18_ = 3
  1446. placedDoor = false
  1447. setWallAlphas()
  1448. _UPVALUE8_ = {}
  1449. _UPVALUE14_ = false
  1450. _UPVALUE15_ = false
  1451. _UPVALUE10_ = _UPVALUE11_
  1452. _UPVALUE11_ = false
  1453. _UPVALUE12_ = true
  1454. floorMode(false)
  1455. end
  1456. if _ARG_0_ == "drawWall_line" or _ARG_0_ == "drawWall_rect" then
  1457. _UPVALUE30_ = tocolor(124, 197, 118)
  1458. setWallAlphas(true)
  1459. _UPVALUE11_ = _UPVALUE10_
  1460. _UPVALUE12_ = false
  1461. _UPVALUE10_ = true
  1462. floorMode(true)
  1463. elseif _ARG_0_ == "deleteWall_line" or _ARG_0_ == "deleteWall_rect" then
  1464. _UPVALUE30_ = tocolor(215, 89, 89)
  1465. setWallAlphas(true)
  1466. _UPVALUE11_ = _UPVALUE10_
  1467. _UPVALUE12_ = false
  1468. _UPVALUE10_ = true
  1469. floorMode(true)
  1470. elseif _ARG_0_ == "setWallpaper" then
  1471. for _FORV_4_ = 1, #_UPVALUE13_ do
  1472. setElementCollisionsEnabled(_UPVALUE13_[_FORV_4_], false)
  1473. end
  1474. setWallAlphas(true)
  1475. elseif _ARG_0_ == "setWindow" then
  1476. for _FORV_4_ = 1, #_UPVALUE16_ do
  1477. setElementCollisionsEnabled(_UPVALUE16_[_FORV_4_], false)
  1478. end
  1479. setWallAlphas(true)
  1480. elseif _ARG_0_ == "deleteWindow" then
  1481. for _FORV_4_ = 1, #_UPVALUE16_ do
  1482. setElementCollisionsEnabled(_UPVALUE16_[_FORV_4_], false)
  1483. end
  1484. setWallAlphas(true)
  1485. elseif _ARG_0_ == "deleteDoor" then
  1486. for _FORV_4_ = 1, #_UPVALUE16_ do
  1487. setElementCollisionsEnabled(_UPVALUE17_[_FORV_4_], false)
  1488. end
  1489. setWallAlphas(true)
  1490. elseif _ARG_0_ == "setDoor" then
  1491. setWallAlphas(true)
  1492. elseif _ARG_0_ == "placeFurniture" then
  1493. _UPVALUE21_ = _UPVALUE22_ + 1
  1494. _UPVALUE23_ = _UPVALUE24_ * _UPVALUE21_ + _UPVALUE25_ * (_UPVALUE21_ + 2)
  1495. _UPVALUE26_ = math.ceil((_UPVALUE27_ - _UPVALUE28_ - _UPVALUE29_) / 2 - _UPVALUE23_ / 2)
  1496. elseif _ARG_0_ == "setCeil" then
  1497. _UPVALUE30_ = tocolor(124, 197, 118)
  1498. setWallAlphas(true)
  1499. _UPVALUE11_ = _UPVALUE10_
  1500. _UPVALUE12_ = false
  1501. _UPVALUE10_ = true
  1502. floorMode(true)
  1503. elseif _ARG_0_ == "setFloor" then
  1504. _UPVALUE30_ = tocolor(124, 197, 118)
  1505. setWallAlphas(true)
  1506. _UPVALUE11_ = _UPVALUE10_
  1507. _UPVALUE12_ = false
  1508. _UPVALUE10_ = true
  1509. floorMode(true)
  1510. end
  1511. _UPVALUE1_ = _ARG_0_
  1512. end
  1513. function removeAllTexturesFromElement(_ARG_0_)
  1514. if _UPVALUE0_[_ARG_0_] then
  1515. for _FORV_4_, _FORV_5_ in pairs(_UPVALUE0_[_ARG_0_]) do
  1516. engineRemoveShaderFromWorldTexture(_UPVALUE0_[_ARG_0_][_FORV_4_], _FORV_4_, _ARG_0_)
  1517. end
  1518. end
  1519. if _UPVALUE1_[_ARG_0_] then
  1520. for _FORV_4_, _FORV_5_ in pairs(_UPVALUE1_[_ARG_0_]) do
  1521. removeTexture(_FORV_5_)
  1522. end
  1523. end
  1524. _UPVALUE1_[_ARG_0_] = {}
  1525. _UPVALUE0_[_ARG_0_] = {}
  1526. end
  1527. function setElementModelEx(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_)
  1528. if getElementModel(_ARG_0_) ~= _ARG_1_ then
  1529. setElementModel(_ARG_0_, _ARG_1_)
  1530. removeAllTexturesFromElement(_ARG_0_)
  1531. if _ARG_1_ == _UPVALUE0_.four then
  1532. setElementRotation(_ARG_0_, 0, 0, 0)
  1533. elseif _ARG_1_ == _UPVALUE0_.straight and _ARG_2_ then
  1534. if _UPVALUE1_[_ARG_2_ - 1 .. "," .. _ARG_3_] and _UPVALUE1_[_ARG_2_ + 1 .. "," .. _ARG_3_] then
  1535. setElementRotation(_ARG_0_, 0, 0, 90)
  1536. elseif _UPVALUE1_[_ARG_2_ .. "," .. _ARG_3_ - 1] and _UPVALUE1_[_ARG_2_ .. "," .. _ARG_3_ + 1] then
  1537. setElementRotation(_ARG_0_, 0, 0, 0)
  1538. end
  1539. end
  1540. return true
  1541. else
  1542. return false
  1543. end
  1544. end
  1545. function checkRotation(_ARG_0_, _ARG_1_)
  1546. if _ARG_0_ then
  1547. if getElementModel(_ARG_0_) == _UPVALUE0_.three then
  1548. return true
  1549. elseif getElementModel(_ARG_0_) == _UPVALUE0_.two then
  1550. return true
  1551. elseif getElementModel(_ARG_0_) == _UPVALUE0_.half then
  1552. return true
  1553. elseif getElementModel(_ARG_0_) == _UPVALUE0_.four then
  1554. return false
  1555. else
  1556. return true
  1557. end
  1558. else
  1559. return false
  1560. end
  1561. end
  1562. function makeCorner(_ARG_0_, _ARG_1_, _ARG_2_)
  1563. if _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] then
  1564. if getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE1_.three then
  1565. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE1_.four)
  1566. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, 0)
  1567. addCashCosts(prices.wall)
  1568. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE1_.two then
  1569. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE1_.three)
  1570. addCashCosts(prices.wall)
  1571. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE1_.three)
  1572. if getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _ARG_2_ == 90 then
  1573. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]))
  1574. elseif getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _ARG_2_ == -90 then
  1575. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 90)
  1576. elseif getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _ARG_2_ == -270 then
  1577. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]))
  1578. elseif getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _ARG_2_ == 270 then
  1579. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 90)
  1580. end
  1581. else
  1582. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE1_.two)
  1583. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, _ARG_2_)
  1584. end
  1585. end
  1586. end
  1587. function deleteWall(_ARG_0_, _ARG_1_)
  1588. if _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] then
  1589. if _UPVALUE1_[_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]] then
  1590. for _FORV_7_, _FORV_8_ in pairs(_UPVALUE1_[_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]]) do
  1591. removeTexture(_FORV_8_)
  1592. end
  1593. end
  1594. _UPVALUE1_[_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]] = nil
  1595. _UPVALUE2_[_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]] = nil
  1596. destroyElement(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_])
  1597. _UPVALUE3_[_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]] = nil
  1598. for _FORV_7_ = 1, #_UPVALUE4_ do
  1599. if _UPVALUE4_[_FORV_7_] == _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] then
  1600. table.remove(_UPVALUE4_, _FORV_7_)
  1601. break
  1602. end
  1603. end
  1604. _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] = nil
  1605. if getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE5_.straight then
  1606. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE5_.two then
  1607. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE5_.three then
  1608. else
  1609. end
  1610. addCashCosts(-prices.wall * 4)
  1611. end
  1612. if _UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_] then
  1613. _UPVALUE7_[_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_]] = nil
  1614. deleteDoor(_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_])
  1615. destroyElement(_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_])
  1616. _UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_] = nil
  1617. end
  1618. end
  1619. function destroyWindow(_ARG_0_, _ARG_1_)
  1620. if _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] then
  1621. destroyElement(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_])
  1622. _UPVALUE1_[_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]] = nil
  1623. _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] = nil
  1624. addCashCosts(-prices.window)
  1625. end
  1626. end
  1627. function createWall(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_)
  1628. if not _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] then
  1629. if _ARG_3_ then
  1630. end
  1631. setElementInteriorAndDimension(createObject(_ARG_4_ or _UPVALUE4_.half, _UPVALUE1_[1] + (_ARG_0_ - 0.5) * _UPVALUE2_, _UPVALUE1_[2] + (_ARG_1_ - 0.5) * _UPVALUE2_ - _UPVALUE3_ / 2, _UPVALUE1_[3] + 1.75, 0, 0, _ARG_2_), 1)
  1632. table.insert(_UPVALUE5_, (createObject(_ARG_4_ or _UPVALUE4_.half, _UPVALUE1_[1] + (_ARG_0_ - 0.5) * _UPVALUE2_, _UPVALUE1_[2] + (_ARG_1_ - 0.5) * _UPVALUE2_ - _UPVALUE3_ / 2, _UPVALUE1_[3] + 1.75, 0, 0, _ARG_2_)))
  1633. _UPVALUE6_[createObject(_ARG_4_ or _UPVALUE4_.half, _UPVALUE1_[1] + (_ARG_0_ - 0.5) * _UPVALUE2_, _UPVALUE1_[2] + (_ARG_1_ - 0.5) * _UPVALUE2_ - _UPVALUE3_ / 2, _UPVALUE1_[3] + 1.75, 0, 0, _ARG_2_)] = {_ARG_0_, _ARG_1_}
  1634. _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] = createObject(_ARG_4_ or _UPVALUE4_.half, _UPVALUE1_[1] + (_ARG_0_ - 0.5) * _UPVALUE2_, _UPVALUE1_[2] + (_ARG_1_ - 0.5) * _UPVALUE2_ - _UPVALUE3_ / 2, _UPVALUE1_[3] + 1.75, 0, 0, _ARG_2_)
  1635. if not _ARG_4_ then
  1636. if _ARG_3_ then
  1637. addCashCosts(prices.wall, true)
  1638. else
  1639. addCashCosts(prices.wall * 2, true)
  1640. end
  1641. end
  1642. return (createObject(_ARG_4_ or _UPVALUE4_.half, _UPVALUE1_[1] + (_ARG_0_ - 0.5) * _UPVALUE2_, _UPVALUE1_[2] + (_ARG_1_ - 0.5) * _UPVALUE2_ - _UPVALUE3_ / 2, _UPVALUE1_[3] + 1.75, 0, 0, _ARG_2_))
  1643. elseif _ARG_3_ then
  1644. if getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE4_.half then
  1645. if math.abs(_ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_])) ~= 0 then
  1646. if math.abs(_ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_])) == 180 then
  1647. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE4_.straight)
  1648. if _ARG_2_ == 90 or _ARG_2_ == 270 then
  1649. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, 90)
  1650. else
  1651. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, 0)
  1652. end
  1653. else
  1654. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE4_.two)
  1655. if getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _ARG_2_ + 360 ~= 90 then
  1656. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 180)
  1657. else
  1658. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 90)
  1659. end
  1660. end
  1661. addCashCosts(prices.wall, true)
  1662. end
  1663. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE4_.two then
  1664. if _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) ~= -90 and _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) ~= -180 and _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) ~= 180 and _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) ~= 270 then
  1665. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE4_.three)
  1666. if _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 360 ~= 90 then
  1667. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 90)
  1668. else
  1669. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]))
  1670. end
  1671. addCashCosts(prices.wall, true)
  1672. end
  1673. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE4_.straight then
  1674. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE4_.three)
  1675. if _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == 90 then
  1676. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 270)
  1677. elseif _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == -90 then
  1678. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 90)
  1679. elseif _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == -270 then
  1680. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]))
  1681. elseif _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == 270 then
  1682. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) + 90)
  1683. end
  1684. addCashCosts(prices.wall, true)
  1685. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE4_.three and _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == 0 then
  1686. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE4_.four)
  1687. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, 0)
  1688. addCashCosts(prices.wall, true)
  1689. end
  1690. elseif getElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == _UPVALUE4_.straight and _ARG_2_ - getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) == 90 then
  1691. setElementModelEx(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE4_.four)
  1692. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, 0)
  1693. addCashCosts(prices.wall * 2, true)
  1694. end
  1695. end
  1696. function getPositionFromElementOffset(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_)
  1697. return _ARG_1_ * getElementMatrix(_ARG_0_)[1][1] + _ARG_2_ * getElementMatrix(_ARG_0_)[2][1] + _ARG_3_ * getElementMatrix(_ARG_0_)[3][1] + getElementMatrix(_ARG_0_)[4][1], _ARG_1_ * getElementMatrix(_ARG_0_)[1][2] + _ARG_2_ * getElementMatrix(_ARG_0_)[2][2] + _ARG_3_ * getElementMatrix(_ARG_0_)[3][2] + getElementMatrix(_ARG_0_)[4][2], _ARG_1_ * getElementMatrix(_ARG_0_)[1][3] + _ARG_2_ * getElementMatrix(_ARG_0_)[2][3] + _ARG_3_ * getElementMatrix(_ARG_0_)[3][3] + getElementMatrix(_ARG_0_)[4][3]
  1698. end
  1699. function createDoor(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_, _ARG_5_)
  1700. if not _ARG_5_ then
  1701. setElementModel(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE1_.door2)
  1702. end
  1703. if not _UPVALUE2_ then
  1704. _UPVALUE3_[_ARG_0_ .. "," .. _ARG_1_] = createColRectangle(getElementPosition(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _UPVALUE4_ / 2, getElementPosition(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) - _UPVALUE4_ / 2, _UPVALUE4_, _UPVALUE4_)
  1705. _UPVALUE5_[_UPVALUE3_[_ARG_0_ .. "," .. _ARG_1_]] = _ARG_0_ .. "," .. _ARG_1_
  1706. end
  1707. if _ARG_3_ > 0 then
  1708. end
  1709. _UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_] = createObject(_ARG_2_, getPositionFromElementOffset(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0.025, -0.75, -1.765))
  1710. _UPVALUE7_[_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_]] = _ARG_3_
  1711. _UPVALUE8_[_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_]] = _ARG_0_ .. "," .. _ARG_1_
  1712. setElementInteriorAndDimension(_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_], 1)
  1713. if _ARG_2_ == 1491 then
  1714. setObjectScale(_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_], 1.005)
  1715. end
  1716. setElementCollisionsEnabled(_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_], false)
  1717. _ARG_4_ = tonumber(_ARG_4_)
  1718. if not _ARG_5_ then
  1719. addCashCosts(prices.door[tonumber(_UPVALUE9_[_ARG_2_])], true)
  1720. end
  1721. if _ARG_4_ > 0 then
  1722. applyTextureToElement(_UPVALUE6_[_ARG_0_ .. "," .. _ARG_1_], _UPVALUE10_[_ARG_2_], "door", _UPVALUE9_[_ARG_2_], _ARG_4_)
  1723. end
  1724. end
  1725. function resursiveSetOther(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_)
  1726. if _UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_] and getElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_]) ~= _ARG_4_ then
  1727. setElementRotation(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_], 0, 0, _ARG_4_)
  1728. removeAllTexturesFromElement(_UPVALUE0_[_ARG_0_ .. "," .. _ARG_1_])
  1729. resursiveSetOther(_ARG_0_ + _ARG_2_, _ARG_1_ + _ARG_3_, _ARG_2_, _ARG_3_, _ARG_4_)
  1730. end
  1731. end
  1732. function removeTexture(_ARG_0_)
  1733. _UPVALUE0_[_ARG_0_] = (_UPVALUE0_[_ARG_0_] or 0) - 1
  1734. if prices.texture[_ARG_0_] then
  1735. addCashCosts(-prices.texture[_ARG_0_])
  1736. end
  1737. if _UPVALUE0_[_ARG_0_] <= 0 then
  1738. _UPVALUE0_[_ARG_0_] = nil
  1739. destroyElement(_UPVALUE1_[_ARG_0_])
  1740. _UPVALUE1_[_ARG_0_] = nil
  1741. end
  1742. end
  1743. function getShaderForTexture(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_)
  1744. _UPVALUE0_[_ARG_0_] = (_UPVALUE0_[_ARG_0_] or 0) + 1
  1745. if not _UPVALUE1_[_ARG_0_] then
  1746. _UPVALUE1_[_ARG_0_] = dxCreateShader("files/texturechanger.fx")
  1747. dxSetShaderValue(_UPVALUE1_[_ARG_0_], "gTexture", _UPVALUE2_[_ARG_1_][_ARG_2_][_ARG_3_])
  1748. end
  1749. return _UPVALUE1_[_ARG_0_]
  1750. end
  1751. function applyTextureToElement(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_, _ARG_5_, _ARG_6_)
  1752. if not _UPVALUE0_[_ARG_0_] then
  1753. _UPVALUE0_[_ARG_0_] = {}
  1754. end
  1755. if not _UPVALUE1_[_ARG_0_] then
  1756. _UPVALUE1_[_ARG_0_] = {}
  1757. end
  1758. _ARG_4_ = tonumber(_ARG_4_)
  1759. if _UPVALUE1_[_ARG_0_][_ARG_1_] ~= table.concat({
  1760. _ARG_2_,
  1761. _ARG_3_,
  1762. _ARG_4_
  1763. }, ",") and _UPVALUE0_[_ARG_0_][_ARG_1_] ~= getShaderForTexture(table.concat({
  1764. _ARG_2_,
  1765. _ARG_3_,
  1766. _ARG_4_
  1767. }, ","), _ARG_2_, _ARG_3_, _ARG_4_) then
  1768. if _UPVALUE0_[_ARG_0_][_ARG_1_] then
  1769. engineRemoveShaderFromWorldTexture(_UPVALUE0_[_ARG_0_][_ARG_1_], _ARG_1_, _ARG_0_)
  1770. removeTexture(_UPVALUE1_[_ARG_0_][_ARG_1_])
  1771. end
  1772. if prices.texture[table.concat({
  1773. _ARG_2_,
  1774. _ARG_3_,
  1775. _ARG_4_
  1776. }, ",")] and not _ARG_5_ then
  1777. addCashCosts(prices.texture[table.concat({
  1778. _ARG_2_,
  1779. _ARG_3_,
  1780. _ARG_4_
  1781. }, ",")], _ARG_2_ == "floor" or _ARG_2_ == "ceil" or _ARG_6_)
  1782. end
  1783. engineApplyShaderToWorldTexture(getShaderForTexture(table.concat({
  1784. _ARG_2_,
  1785. _ARG_3_,
  1786. _ARG_4_
  1787. }, ","), _ARG_2_, _ARG_3_, _ARG_4_), _ARG_1_, _ARG_0_)
  1788. _UPVALUE0_[_ARG_0_][_ARG_1_] = getShaderForTexture(table.concat({
  1789. _ARG_2_,
  1790. _ARG_3_,
  1791. _ARG_4_
  1792. }, ","), _ARG_2_, _ARG_3_, _ARG_4_)
  1793. _UPVALUE1_[_ARG_0_][_ARG_1_] = table.concat({
  1794. _ARG_2_,
  1795. _ARG_3_,
  1796. _ARG_4_
  1797. }, ",")
  1798. end
  1799. end
  1800. function removeTextureFromElement(_ARG_0_, _ARG_1_)
  1801. if not _UPVALUE0_[_ARG_0_] then
  1802. _UPVALUE0_[_ARG_0_] = {}
  1803. end
  1804. if not _UPVALUE1_[_ARG_0_] then
  1805. _UPVALUE1_[_ARG_0_] = {}
  1806. end
  1807. if _UPVALUE0_[_ARG_0_][_ARG_1_] and _UPVALUE1_[_ARG_0_][_ARG_1_] then
  1808. engineRemoveShaderFromWorldTexture(_UPVALUE0_[_ARG_0_][_ARG_1_], _ARG_1_, _ARG_0_)
  1809. removeTexture(_UPVALUE1_[_ARG_0_][_ARG_1_])
  1810. _UPVALUE0_[_ARG_0_][_ARG_1_] = nil
  1811. _UPVALUE1_[_ARG_0_][_ARG_1_] = nil
  1812. end
  1813. end
  1814. function textureSide()
  1815. if getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.base or getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.window then
  1816. if getElementRotation(unpack(_UPVALUE1_)) == 0 then
  1817. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1818. applyTextureToElement(unpack(_UPVALUE1_))
  1819. else
  1820. applyTextureToElement(unpack(_UPVALUE1_))
  1821. end
  1822. elseif getElementRotation(unpack(_UPVALUE1_)) == 180 then
  1823. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1824. applyTextureToElement(unpack(_UPVALUE1_))
  1825. else
  1826. applyTextureToElement(unpack(_UPVALUE1_))
  1827. end
  1828. elseif getElementRotation(unpack(_UPVALUE1_)) == 90 then
  1829. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -2 then
  1830. applyTextureToElement(unpack(_UPVALUE1_))
  1831. else
  1832. applyTextureToElement(unpack(_UPVALUE1_))
  1833. end
  1834. elseif getElementRotation(unpack(_UPVALUE1_)) == 270 then
  1835. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 1 then
  1836. applyTextureToElement(unpack(_UPVALUE1_))
  1837. else
  1838. applyTextureToElement(unpack(_UPVALUE1_))
  1839. end
  1840. end
  1841. elseif getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.two then
  1842. if getElementRotation(unpack(_UPVALUE1_)) == 0 then
  1843. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) >= -1 then
  1844. applyTextureToElement(unpack(_UPVALUE1_))
  1845. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 then
  1846. applyTextureToElement(unpack(_UPVALUE1_))
  1847. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 then
  1848. applyTextureToElement(unpack(_UPVALUE1_))
  1849. else
  1850. applyTextureToElement(unpack(_UPVALUE1_))
  1851. end
  1852. elseif getElementRotation(unpack(_UPVALUE1_)) == 90 then
  1853. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0.5 then
  1854. applyTextureToElement(unpack(_UPVALUE1_))
  1855. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0.5 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 1.6 then
  1856. applyTextureToElement(unpack(_UPVALUE1_))
  1857. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 then
  1858. applyTextureToElement(unpack(_UPVALUE1_))
  1859. else
  1860. applyTextureToElement(unpack(_UPVALUE1_))
  1861. end
  1862. elseif getElementRotation(unpack(_UPVALUE1_)) == 180 then
  1863. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 2.3 then
  1864. applyTextureToElement(unpack(_UPVALUE1_))
  1865. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 2.3 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 3.1 then
  1866. applyTextureToElement(unpack(_UPVALUE1_))
  1867. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -0.8 then
  1868. applyTextureToElement(unpack(_UPVALUE1_))
  1869. else
  1870. applyTextureToElement(unpack(_UPVALUE1_))
  1871. end
  1872. elseif getElementRotation(unpack(_UPVALUE1_)) == 270 then
  1873. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) >= -2.3 then
  1874. applyTextureToElement(unpack(_UPVALUE1_))
  1875. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -2.3 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -3.1 then
  1876. applyTextureToElement(unpack(_UPVALUE1_))
  1877. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0.7 then
  1878. applyTextureToElement(unpack(_UPVALUE1_))
  1879. else
  1880. applyTextureToElement(unpack(_UPVALUE1_))
  1881. end
  1882. end
  1883. elseif getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.four then
  1884. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -3.1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -2.4 then
  1885. applyTextureToElement(unpack(_UPVALUE1_))
  1886. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -2.4 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -1.6 then
  1887. applyTextureToElement(unpack(_UPVALUE1_))
  1888. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -0.9 then
  1889. applyTextureToElement(unpack(_UPVALUE1_))
  1890. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -0.9 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0 then
  1891. applyTextureToElement(unpack(_UPVALUE1_))
  1892. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0.7 then
  1893. applyTextureToElement(unpack(_UPVALUE1_))
  1894. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0.7 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 1.6 then
  1895. applyTextureToElement(unpack(_UPVALUE1_))
  1896. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 2.3 then
  1897. applyTextureToElement(unpack(_UPVALUE1_))
  1898. else
  1899. applyTextureToElement(unpack(_UPVALUE1_))
  1900. end
  1901. elseif getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.three then
  1902. if getElementRotation(unpack(_UPVALUE1_)) == 0 then
  1903. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -3.1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -2.4 then
  1904. applyTextureToElement(unpack(_UPVALUE1_))
  1905. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -2.4 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -1.6 then
  1906. applyTextureToElement(unpack(_UPVALUE1_))
  1907. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -1 then
  1908. applyTextureToElement(unpack(_UPVALUE1_))
  1909. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0 then
  1910. applyTextureToElement(unpack(_UPVALUE1_))
  1911. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.6 then
  1912. applyTextureToElement(unpack(_UPVALUE1_))
  1913. else
  1914. applyTextureToElement(unpack(_UPVALUE1_))
  1915. end
  1916. elseif getElementRotation(unpack(_UPVALUE1_)) == 270 then
  1917. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -3.1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -2.4 then
  1918. applyTextureToElement(unpack(_UPVALUE1_))
  1919. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -2.4 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -1.6 then
  1920. applyTextureToElement(unpack(_UPVALUE1_))
  1921. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 2.4 then
  1922. applyTextureToElement(unpack(_UPVALUE1_))
  1923. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 2.4 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 3.1 then
  1924. applyTextureToElement(unpack(_UPVALUE1_))
  1925. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 then
  1926. applyTextureToElement(unpack(_UPVALUE1_))
  1927. else
  1928. applyTextureToElement(unpack(_UPVALUE1_))
  1929. end
  1930. elseif getElementRotation(unpack(_UPVALUE1_)) == 180 then
  1931. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0.7 then
  1932. applyTextureToElement(unpack(_UPVALUE1_))
  1933. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0.7 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 1.6 then
  1934. applyTextureToElement(unpack(_UPVALUE1_))
  1935. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 2.1 then
  1936. applyTextureToElement(unpack(_UPVALUE1_))
  1937. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 2.1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 3.1 then
  1938. applyTextureToElement(unpack(_UPVALUE1_))
  1939. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 then
  1940. applyTextureToElement(unpack(_UPVALUE1_))
  1941. else
  1942. applyTextureToElement(unpack(_UPVALUE1_))
  1943. end
  1944. elseif getElementRotation(unpack(_UPVALUE1_)) == 90 then
  1945. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -1 then
  1946. applyTextureToElement(unpack(_UPVALUE1_))
  1947. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0 then
  1948. applyTextureToElement(unpack(_UPVALUE1_))
  1949. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 0.6 then
  1950. applyTextureToElement(unpack(_UPVALUE1_))
  1951. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 1.6 then
  1952. applyTextureToElement(unpack(_UPVALUE1_))
  1953. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1954. applyTextureToElement(unpack(_UPVALUE1_))
  1955. else
  1956. applyTextureToElement(unpack(_UPVALUE1_))
  1957. end
  1958. end
  1959. elseif getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.straight then
  1960. if getElementRotation(unpack(_UPVALUE1_)) == 90 then
  1961. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -3.1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= -1.6 then
  1962. applyTextureToElement(unpack(_UPVALUE1_))
  1963. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1964. applyTextureToElement(unpack(_UPVALUE1_))
  1965. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 1.5 then
  1966. applyTextureToElement(unpack(_UPVALUE1_))
  1967. else
  1968. applyTextureToElement(unpack(_UPVALUE1_))
  1969. end
  1970. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.7 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) <= 3.1 then
  1971. applyTextureToElement(unpack(_UPVALUE1_))
  1972. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -3.1 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -1.6 then
  1973. applyTextureToElement(unpack(_UPVALUE1_))
  1974. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1975. applyTextureToElement(unpack(_UPVALUE1_))
  1976. elseif math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 1.6 then
  1977. applyTextureToElement(unpack(_UPVALUE1_))
  1978. end
  1979. elseif getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.half then
  1980. if getElementRotation(unpack(_UPVALUE1_)) == 90 then
  1981. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1982. applyTextureToElement(unpack(_UPVALUE1_))
  1983. else
  1984. applyTextureToElement(unpack(_UPVALUE1_))
  1985. end
  1986. elseif getElementRotation(unpack(_UPVALUE1_)) == 270 then
  1987. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 0 then
  1988. applyTextureToElement(unpack(_UPVALUE1_))
  1989. else
  1990. applyTextureToElement(unpack(_UPVALUE1_))
  1991. end
  1992. elseif getElementRotation(unpack(_UPVALUE1_)) == 0 then
  1993. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 1.6 then
  1994. applyTextureToElement(unpack(_UPVALUE1_))
  1995. else
  1996. applyTextureToElement(unpack(_UPVALUE1_))
  1997. end
  1998. elseif getElementRotation(unpack(_UPVALUE1_)) == 180 then
  1999. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < -1.6 then
  2000. applyTextureToElement(unpack(_UPVALUE1_))
  2001. else
  2002. applyTextureToElement(unpack(_UPVALUE1_))
  2003. end
  2004. end
  2005. elseif getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.door or getElementModel(unpack(_UPVALUE1_)) == _UPVALUE2_.door2 then
  2006. if getElementRotation(unpack(_UPVALUE1_)) == 90 then
  2007. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 then
  2008. if _UPVALUE3_[2] ~= unpack(_UPVALUE1_) then
  2009. applyTextureToElement(unpack(_UPVALUE1_))
  2010. end
  2011. else
  2012. applyTextureToElement(unpack(_UPVALUE1_))
  2013. end
  2014. elseif getElementRotation(unpack(_UPVALUE1_)) == 0 then
  2015. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 then
  2016. if _UPVALUE3_[2] ~= unpack(_UPVALUE1_) then
  2017. applyTextureToElement(unpack(_UPVALUE1_))
  2018. end
  2019. else
  2020. applyTextureToElement(unpack(_UPVALUE1_))
  2021. end
  2022. elseif getElementRotation(unpack(_UPVALUE1_)) == 270 then
  2023. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > 0 then
  2024. applyTextureToElement(unpack(_UPVALUE1_))
  2025. elseif _UPVALUE3_[2] ~= unpack(_UPVALUE1_) then
  2026. applyTextureToElement(unpack(_UPVALUE1_))
  2027. end
  2028. elseif getElementRotation(unpack(_UPVALUE1_)) == 180 then
  2029. if math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) < 1.6 and math.atan2(unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_)), unpack(_UPVALUE1_) - getElementPosition(unpack(_UPVALUE1_))) > -1.6 then
  2030. applyTextureToElement(unpack(_UPVALUE1_))
  2031. elseif _UPVALUE3_[2] ~= unpack(_UPVALUE1_) then
  2032. applyTextureToElement(unpack(_UPVALUE1_))
  2033. end
  2034. end
  2035. end
  2036. end
  2037. function showCeil(_ARG_0_)
  2038. for _FORV_4_ = 1, #_UPVALUE0_ do
  2039. setElementInteriorAndDimension(_UPVALUE0_[_FORV_4_], _ARG_0_ and 1 or 2)
  2040. setElementCollisionsEnabled(_UPVALUE0_[_FORV_4_], _ARG_0_)
  2041. end
  2042. end
  2043. function showFloor(_ARG_0_)
  2044. for _FORV_4_ = 1, #_UPVALUE0_ do
  2045. setElementInteriorAndDimension(_UPVALUE0_[_FORV_4_], _ARG_0_ and 1 or 2)
  2046. setElementCollisionsEnabled(_UPVALUE0_[_FORV_4_], _ARG_0_)
  2047. end
  2048. end
  2049. function setTest()
  2050. _UPVALUE0_ = false
  2051. setMode("looking")
  2052. _UPVALUE1_ = not _UPVALUE1_
  2053. playSoundEx("files/sound/testmode.mp3")
  2054. if _UPVALUE1_ then
  2055. destroyElement(_UPVALUE2_)
  2056. _UPVALUE2_ = false
  2057. showCursor(false)
  2058. setCameraTarget(localPlayer)
  2059. if _UPVALUE3_[1] < _UPVALUE4_[1] + 1 then
  2060. end
  2061. if _UPVALUE3_[2] < _UPVALUE4_[2] + 1 then
  2062. end
  2063. if _UPVALUE4_[1] + 1 > _UPVALUE4_[3] - 1 then
  2064. end
  2065. if _UPVALUE4_[2] + 1 > _UPVALUE4_[4] - 1 then
  2066. end
  2067. setElementPosition(localPlayer, _UPVALUE4_[3] - 1, _UPVALUE4_[4] - 1, _UPVALUE3_[3] + 0.5)
  2068. setElementFrozen(localPlayer, false)
  2069. setMode("test")
  2070. _UPVALUE5_ = _UPVALUE6_
  2071. _UPVALUE7_ = _UPVALUE8_ * _UPVALUE5_ + _UPVALUE9_ * (_UPVALUE5_ + 2)
  2072. _UPVALUE10_ = math.ceil(_UPVALUE11_ / 2 - _UPVALUE7_ / 2)
  2073. showCeil(true)
  2074. for _FORV_5_, _FORV_6_ in pairs(_UPVALUE12_) do
  2075. setElementCollisionsEnabled(_FORV_6_, true)
  2076. setElementModel(_UPVALUE13_[_FORV_5_], _UPVALUE14_.door)
  2077. end
  2078. else
  2079. _UPVALUE15_ = -14
  2080. startBcgMusic()
  2081. showCursor(true)
  2082. setCameraMatrix(_UPVALUE3_[4], _UPVALUE3_[5], _UPVALUE3_[6], _UPVALUE3_[1], _UPVALUE3_[2], _UPVALUE3_[3])
  2083. setElementPosition(localPlayer, 0, 0, 0)
  2084. setElementFrozen(localPlayer, true)
  2085. setMode("looking")
  2086. _UPVALUE5_ = _UPVALUE16_
  2087. _UPVALUE7_ = _UPVALUE8_ * _UPVALUE5_ + _UPVALUE9_ * (_UPVALUE5_ + 2)
  2088. _UPVALUE10_ = math.ceil((_UPVALUE11_ - _UPVALUE17_ - _UPVALUE18_) / 2 - _UPVALUE7_ / 2)
  2089. showCeil(false)
  2090. for _FORV_3_, _FORV_4_ in pairs(_UPVALUE12_) do
  2091. setElementCollisionsEnabled(_FORV_4_, false)
  2092. setElementRotation(_FORV_4_, 0, 0, _UPVALUE19_[_FORV_4_] + getElementRotation(_UPVALUE13_[_FORV_3_]))
  2093. setElementModel(_UPVALUE13_[_FORV_3_], _UPVALUE14_.door2)
  2094. end
  2095. end
  2096. if _UPVALUE20_ and _UPVALUE1_ then
  2097. showFloor(true)
  2098. elseif _UPVALUE20_ and not _UPVALUE1_ then
  2099. showCeil(true)
  2100. showFloor(false)
  2101. end
  2102. end
  2103. function fromString(_ARG_0_)
  2104. if split(_ARG_0_, ";")[2] ~= "-" and split(_ARG_0_, ";")[2] then
  2105. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[2], "|") do
  2106. if split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")[4] then
  2107. split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")[4] = {}
  2108. for _FORV_13_ = 1, #split(split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")[4], "/"), 2 do
  2109. split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")[4][split(split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")[4], "/")[_FORV_13_]] = split(split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")[4], "/")[_FORV_13_ + 1]
  2110. end
  2111. end
  2112. table.insert({
  2113. costs = tonumber(split(_ARG_0_, ";")[1]),
  2114. walls = {},
  2115. baseWalls = {},
  2116. baseFloors = {},
  2117. baseCeils = {},
  2118. windows = {},
  2119. doors = {},
  2120. furnitures = {},
  2121. baseDoor = {}
  2122. }.walls, (split(split(split(_ARG_0_, ";")[2], "|")[_FORV_7_], "-")))
  2123. end
  2124. end
  2125. if split(_ARG_0_, ";")[3] ~= "-" and split(_ARG_0_, ";")[3] then
  2126. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[3], "/"), 3 do
  2127. table.insert({
  2128. costs = tonumber(split(_ARG_0_, ";")[1]),
  2129. walls = {},
  2130. baseWalls = {},
  2131. baseFloors = {},
  2132. baseCeils = {},
  2133. windows = {},
  2134. doors = {},
  2135. furnitures = {},
  2136. baseDoor = {}
  2137. }.baseWalls, {
  2138. split(split(_ARG_0_, ";")[3], "/")[_FORV_7_],
  2139. split(split(_ARG_0_, ";")[3], "/")[_FORV_7_ + 1],
  2140. split(split(_ARG_0_, ";")[3], "/")[_FORV_7_ + 2]
  2141. })
  2142. end
  2143. end
  2144. if split(_ARG_0_, ";")[4] ~= "-" and split(_ARG_0_, ";")[4] then
  2145. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[4], "/"), 3 do
  2146. table.insert({
  2147. costs = tonumber(split(_ARG_0_, ";")[1]),
  2148. walls = {},
  2149. baseWalls = {},
  2150. baseFloors = {},
  2151. baseCeils = {},
  2152. windows = {},
  2153. doors = {},
  2154. furnitures = {},
  2155. baseDoor = {}
  2156. }.baseFloors, {
  2157. split(split(_ARG_0_, ";")[4], "/")[_FORV_7_],
  2158. split(split(_ARG_0_, ";")[4], "/")[_FORV_7_ + 1],
  2159. split(split(_ARG_0_, ";")[4], "/")[_FORV_7_ + 2]
  2160. })
  2161. end
  2162. end
  2163. if split(_ARG_0_, ";")[5] ~= "-" and split(_ARG_0_, ";")[5] then
  2164. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[5], "/"), 3 do
  2165. table.insert({
  2166. costs = tonumber(split(_ARG_0_, ";")[1]),
  2167. walls = {},
  2168. baseWalls = {},
  2169. baseFloors = {},
  2170. baseCeils = {},
  2171. windows = {},
  2172. doors = {},
  2173. furnitures = {},
  2174. baseDoor = {}
  2175. }.baseCeils, {
  2176. split(split(_ARG_0_, ";")[5], "/")[_FORV_7_],
  2177. split(split(_ARG_0_, ";")[5], "/")[_FORV_7_ + 1],
  2178. split(split(_ARG_0_, ";")[5], "/")[_FORV_7_ + 2]
  2179. })
  2180. end
  2181. end
  2182. if split(_ARG_0_, ";")[6] ~= "-" and split(_ARG_0_, ";")[6] then
  2183. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[6], "/"), 3 do
  2184. table.insert({
  2185. costs = tonumber(split(_ARG_0_, ";")[1]),
  2186. walls = {},
  2187. baseWalls = {},
  2188. baseFloors = {},
  2189. baseCeils = {},
  2190. windows = {},
  2191. doors = {},
  2192. furnitures = {},
  2193. baseDoor = {}
  2194. }.windows, {
  2195. split(split(_ARG_0_, ";")[6], "/")[_FORV_7_],
  2196. split(split(_ARG_0_, ";")[6], "/")[_FORV_7_ + 1],
  2197. split(split(_ARG_0_, ";")[6], "/")[_FORV_7_ + 2]
  2198. })
  2199. end
  2200. end
  2201. if split(_ARG_0_, ";")[7] ~= "-" and split(_ARG_0_, ";")[7] then
  2202. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[7], "/"), 4 do
  2203. table.insert({
  2204. costs = tonumber(split(_ARG_0_, ";")[1]),
  2205. walls = {},
  2206. baseWalls = {},
  2207. baseFloors = {},
  2208. baseCeils = {},
  2209. windows = {},
  2210. doors = {},
  2211. furnitures = {},
  2212. baseDoor = {}
  2213. }.doors, {
  2214. split(split(_ARG_0_, ";")[7], "/")[_FORV_7_],
  2215. split(split(_ARG_0_, ";")[7], "/")[_FORV_7_ + 1],
  2216. split(split(_ARG_0_, ";")[7], "/")[_FORV_7_ + 2],
  2217. split(split(_ARG_0_, ";")[7], "/")[_FORV_7_ + 3]
  2218. })
  2219. end
  2220. end
  2221. if split(_ARG_0_, ";")[8] ~= "-" and split(_ARG_0_, ";")[8] then
  2222. for _FORV_7_ = 1, #split(split(_ARG_0_, ";")[8], "/"), 5 do
  2223. table.insert({
  2224. costs = tonumber(split(_ARG_0_, ";")[1]),
  2225. walls = {},
  2226. baseWalls = {},
  2227. baseFloors = {},
  2228. baseCeils = {},
  2229. windows = {},
  2230. doors = {},
  2231. furnitures = {},
  2232. baseDoor = {}
  2233. }.furnitures, {
  2234. split(split(_ARG_0_, ";")[8], "/")[_FORV_7_],
  2235. split(split(_ARG_0_, ";")[8], "/")[_FORV_7_ + 1],
  2236. split(split(_ARG_0_, ";")[8], "/")[_FORV_7_ + 2],
  2237. split(split(_ARG_0_, ";")[8], "/")[_FORV_7_ + 3],
  2238. split(split(_ARG_0_, ";")[8], "/")[_FORV_7_ + 4]
  2239. })
  2240. end
  2241. end
  2242. if split(_ARG_0_, ";")[9] ~= "-" and split(_ARG_0_, ";")[9] then
  2243. {
  2244. costs = tonumber(split(_ARG_0_, ";")[1]),
  2245. walls = {},
  2246. baseWalls = {},
  2247. baseFloors = {},
  2248. baseCeils = {},
  2249. windows = {},
  2250. doors = {},
  2251. furnitures = {},
  2252. baseDoor = {}
  2253. }.baseDoor[2] = split(split(_ARG_0_, ";")[9], "/")[1]
  2254. {
  2255. costs = tonumber(split(_ARG_0_, ";")[1]),
  2256. walls = {},
  2257. baseWalls = {},
  2258. baseFloors = {},
  2259. baseCeils = {},
  2260. windows = {},
  2261. doors = {},
  2262. furnitures = {},
  2263. baseDoor = {}
  2264. }.baseDoor[3] = split(split(_ARG_0_, ";")[9], "/")[2]
  2265. {
  2266. costs = tonumber(split(_ARG_0_, ";")[1]),
  2267. walls = {},
  2268. baseWalls = {},
  2269. baseFloors = {},
  2270. baseCeils = {},
  2271. windows = {},
  2272. doors = {},
  2273. furnitures = {},
  2274. baseDoor = {}
  2275. }.baseDoor[4] = split(split(_ARG_0_, ";")[9], "/")[3]
  2276. {
  2277. costs = tonumber(split(_ARG_0_, ";")[1]),
  2278. walls = {},
  2279. baseWalls = {},
  2280. baseFloors = {},
  2281. baseCeils = {},
  2282. windows = {},
  2283. doors = {},
  2284. furnitures = {},
  2285. baseDoor = {}
  2286. }.baseDoor[5] = split(split(_ARG_0_, ";")[9], "/")[4]
  2287. end
  2288. return {
  2289. costs = tonumber(split(_ARG_0_, ";")[1]),
  2290. walls = {},
  2291. baseWalls = {},
  2292. baseFloors = {},
  2293. baseCeils = {},
  2294. windows = {},
  2295. doors = {},
  2296. furnitures = {},
  2297. baseDoor = {}
  2298. }
  2299. end
  2300. function toString(_ARG_0_)
  2301. if _ARG_0_.walls and #_ARG_0_.walls > 0 then
  2302. for _FORV_6_ = 1, #_ARG_0_.walls do
  2303. if _ARG_0_.walls[_FORV_6_][4] then
  2304. for _FORV_12_, _FORV_13_ in pairs(_ARG_0_.walls[_FORV_6_][4]) do
  2305. table.insert({}, _FORV_12_)
  2306. table.insert({}, _FORV_13_)
  2307. end
  2308. end
  2309. table.insert({}, (((_ARG_0_.walls[_FORV_6_][1] .. "-") .. _ARG_0_.walls[_FORV_6_][2] .. "-") .. _ARG_0_.walls[_FORV_6_][3]) .. "-" .. table.concat({}, "/"))
  2310. end
  2311. else
  2312. end
  2313. if _ARG_0_.baseWalls and 0 < #_ARG_0_.baseWalls then
  2314. for _FORV_5_ = 1, #_ARG_0_.baseWalls do
  2315. end
  2316. else
  2317. end
  2318. if _ARG_0_.baseFloors and 0 < #_ARG_0_.baseFloors then
  2319. for _FORV_5_ = 1, #_ARG_0_.baseFloors do
  2320. end
  2321. else
  2322. end
  2323. if _ARG_0_.baseCeils and 0 < #_ARG_0_.baseCeils then
  2324. for _FORV_5_ = 1, #_ARG_0_.baseCeils do
  2325. end
  2326. else
  2327. end
  2328. if _ARG_0_.windows and 0 < #_ARG_0_.windows then
  2329. for _FORV_5_ = 1, #_ARG_0_.windows do
  2330. end
  2331. else
  2332. end
  2333. if _ARG_0_.doors and 0 < #_ARG_0_.doors then
  2334. for _FORV_5_ = 1, #_ARG_0_.doors do
  2335. end
  2336. else
  2337. end
  2338. if _ARG_0_.furnitures and 0 < #_ARG_0_.furnitures then
  2339. for _FORV_5_ = 1, #_ARG_0_.furnitures do
  2340. end
  2341. else
  2342. end
  2343. if _ARG_0_.baseDoor then
  2344. else
  2345. end
  2346. return ((((((((((((((((((((((((((((((((((((((((("" .. _ARG_0_.costs .. ";") .. table.concat({}, "|")) .. "-") .. ";") .. _ARG_0_.baseWalls[_FORV_5_][1] .. "/") .. _ARG_0_.baseWalls[_FORV_5_][2] .. "/") .. _ARG_0_.baseWalls[_FORV_5_][3] .. "/") .. "-") .. ";") .. _ARG_0_.baseFloors[_FORV_5_][1] .. "/") .. _ARG_0_.baseFloors[_FORV_5_][2] .. "/") .. _ARG_0_.baseFloors[_FORV_5_][3] .. "/") .. "-") .. ";") .. _ARG_0_.baseCeils[_FORV_5_][1] .. "/") .. _ARG_0_.baseCeils[_FORV_5_][2] .. "/") .. _ARG_0_.baseCeils[_FORV_5_][3] .. "/") .. "-") .. ";") .. _ARG_0_.windows[_FORV_5_][1] .. "/") .. _ARG_0_.windows[_FORV_5_][2] .. "/") .. _ARG_0_.windows[_FORV_5_][3] .. "/") .. "-") .. ";") .. _ARG_0_.doors[_FORV_5_][1] .. "/") .. _ARG_0_.doors[_FORV_5_][2] .. "/") .. _ARG_0_.doors[_FORV_5_][3] .. "/") .. _ARG_0_.doors[_FORV_5_][4] .. "/") .. "-") .. ";") .. _ARG_0_.furnitures[_FORV_5_][1] .. "/") .. _ARG_0_.furnitures[_FORV_5_][2] .. "/") .. _ARG_0_.furnitures[_FORV_5_][3] .. "/") .. _ARG_0_.furnitures[_FORV_5_][4] .. "/") .. _ARG_0_.furnitures[_FORV_5_][5] .. "/") .. "-") .. ";") .. table.concat(_UPVALUE0_[_ARG_0_.baseDoor[2]], ",") .. "/") .. _ARG_0_.baseDoor[3] .. "/") .. _ARG_0_.baseDoor[4] .. "/") .. _ARG_0_.baseDoor[5]) .. "-"
  2347. end
  2348. function toggleInfoState()
  2349. _UPVALUE0_ = not _UPVALUE0_
  2350. end
  2351. function toggleBcgMusic()
  2352. if _UPVALUE0_ then
  2353. destroyElement(_UPVALUE0_)
  2354. _UPVALUE0_ = false
  2355. else
  2356. _UPVALUE1_ = 0
  2357. startBcgMusic()
  2358. end
  2359. end
  2360. function toggleSounds()
  2361. _UPVALUE0_ = not _UPVALUE0_
  2362. if _UPVALUE0_ then
  2363. playSound("files/sound/select.mp3")
  2364. end
  2365. end
  2366. function onClientClick(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_, _ARG_5_, _ARG_6_, _ARG_7_)
  2367. if _ARG_0_ == "left" and _UPVALUE0_ and (not _ARG_7_ or not _UPVALUE1_[_ARG_7_]) and not _UPVALUE2_ and _ARG_1_ == "down" then
  2368. setActiveFurniture(false)
  2369. return
  2370. end
  2371. if not _UPVALUE2_ then
  2372. if _ARG_0_ == "left" and _ARG_7_ and _UPVALUE1_[_ARG_7_] and _ARG_1_ == "down" and _UPVALUE3_ == "looking" then
  2373. setActiveFurniture(_ARG_7_)
  2374. return
  2375. elseif _ARG_0_ == "left" and _ARG_7_ and getElementModel(_ARG_7_) == 2332 and getElementData(_ARG_7_, "safeId") and _ARG_1_ == "down" and _UPVALUE3_ == "looking" and getTickCount() - _UPVALUE4_ > 1000 then
  2376. setActiveFurniture(_ARG_7_)
  2377. _UPVALUE4_ = getTickCount()
  2378. elseif _ARG_0_ == "left" and _ARG_7_ and getElementModel(_ARG_7_) == 2964 and getElementData(_ARG_7_, "poolTableID") and _ARG_1_ == "down" and _UPVALUE3_ == "looking" and getTickCount() - _UPVALUE4_ > 1000 then
  2379. setActiveFurniture(_ARG_7_)
  2380. _UPVALUE4_ = getTickCount()
  2381. return
  2382. end
  2383. end
  2384. if _UPVALUE2_ and _ARG_1_ == "down" then
  2385. if _ARG_0_ == "left" then
  2386. if split(_UPVALUE2_, ":")[#split(_UPVALUE2_, ":")] == "selectSound" then
  2387. playSoundEx("files/sound/select.mp3")
  2388. end
  2389. if split(_UPVALUE2_, ":")[1] == "sound" then
  2390. toggleSounds()
  2391. elseif split(_UPVALUE2_, ":")[1] == "music" then
  2392. toggleBcgMusic()
  2393. elseif split(_UPVALUE2_, ":")[1] == "test" then
  2394. setTest()
  2395. elseif split(_UPVALUE2_, ":")[1] == "promptYes" then
  2396. if _UPVALUE5_[1] == "billiard" then
  2397. triggerServerEvent("intiEdit:placeBilliard", localPlayer, _UPVALUE5_)
  2398. elseif _UPVALUE5_[1] == "safe" then
  2399. triggerServerEvent("intiEdit:placeSafe", localPlayer, _UPVALUE5_)
  2400. elseif _UPVALUE5_[1] == "buyPPFurniture" then
  2401. triggerServerEvent("intiEdit:buyPPFurniture", localPlayer, _UPVALUE6_, _UPVALUE5_[2])
  2402. elseif _UPVALUE5_[1] == "exit" then
  2403. triggerServerEvent("intiEdit:exitInterior", localPlayer)
  2404. end
  2405. _UPVALUE5_ = false
  2406. elseif split(_UPVALUE2_, ":")[1] == "promptNo" then
  2407. _UPVALUE5_ = false
  2408. elseif split(_UPVALUE2_, ":")[1] == "exit" then
  2409. _UPVALUE5_ = {"exit"}
  2410. elseif split(_UPVALUE2_, ":")[1] == "infoState" then
  2411. toggleInfoState()
  2412. elseif split(_UPVALUE2_, ":")[1] == "infoPage" then
  2413. _UPVALUE7_[_UPVALUE8_] = tonumber(split(_UPVALUE2_, ":")[2]) or 1
  2414. elseif split(_UPVALUE2_, ":")[1] == "save" then
  2415. if _UPVALUE9_ then
  2416. _UPVALUE9_ = false
  2417. setMode("looking")
  2418. if _UPVALUE10_ - _UPVALUE11_ > 0 and _UPVALUE10_ - _UPVALUE11_ > getElementData(localPlayer, "char.Money") then
  2419. exports.sas_accounts:showInfo("e", "Nincs el\195\169g p\195\169nzed!")
  2420. _UPVALUE9_ = true
  2421. return
  2422. end
  2423. for _FORV_14_, _FORV_15_ in pairs(_UPVALUE12_) do
  2424. if _UPVALUE13_[_FORV_15_] then
  2425. for _FORV_24_, _FORV_25_ in pairs(_UPVALUE13_[_FORV_15_]) do
  2426. {
  2427. _FORV_14_,
  2428. getElementRotation(_FORV_15_)
  2429. }[4][smallTextureName(_FORV_24_)] = smallPathName(_FORV_25_)
  2430. end
  2431. if 1 > 0 + 1 then
  2432. end
  2433. end
  2434. table.insert({
  2435. walls = {},
  2436. baseWalls = {},
  2437. baseFloors = _FOR_,
  2438. baseCeils = _FOR_,
  2439. windows = _FOR_,
  2440. doors = {},
  2441. furnitures = {},
  2442. costs = _UPVALUE10_,
  2443. baseDoor = _UPVALUE24_
  2444. }.walls, {
  2445. _FORV_14_,
  2446. getElementRotation(_FORV_15_)
  2447. })
  2448. end
  2449. for _FORV_14_ = 1, #_UPVALUE14_ do
  2450. if _UPVALUE13_[_UPVALUE14_[_FORV_14_]] then
  2451. for _FORV_18_, _FORV_19_ in pairs(_UPVALUE13_[_UPVALUE14_[_FORV_14_]]) do
  2452. table.insert({
  2453. walls = {},
  2454. baseWalls = {},
  2455. baseFloors = _FOR_,
  2456. baseCeils = _FOR_,
  2457. windows = _FOR_,
  2458. doors = {},
  2459. furnitures = {},
  2460. costs = _UPVALUE10_,
  2461. baseDoor = _UPVALUE24_
  2462. }.baseWalls, {
  2463. table.concat(_UPVALUE15_[_UPVALUE14_[_FORV_14_]], ","),
  2464. smallTextureName(_FORV_18_),
  2465. smallPathName(_FORV_19_)
  2466. })
  2467. end
  2468. end
  2469. end
  2470. for _FORV_14_ = 1, #_UPVALUE16_ do
  2471. if _UPVALUE13_[_UPVALUE16_[_FORV_14_]] then
  2472. for _FORV_18_, _FORV_19_ in pairs(_UPVALUE13_[_UPVALUE16_[_FORV_14_]]) do
  2473. table.insert({
  2474. walls = {},
  2475. baseWalls = {},
  2476. baseFloors = _FOR_,
  2477. baseCeils = _FOR_,
  2478. windows = _FOR_,
  2479. doors = {},
  2480. furnitures = {},
  2481. costs = _UPVALUE10_,
  2482. baseDoor = _UPVALUE24_
  2483. }.baseFloors, {
  2484. table.concat(_UPVALUE17_[_UPVALUE16_[_FORV_14_]], ","),
  2485. smallTextureName(_FORV_18_),
  2486. smallPathName(_FORV_19_)
  2487. })
  2488. end
  2489. end
  2490. end
  2491. for _FORV_14_ = 1, #_UPVALUE18_ do
  2492. if _UPVALUE13_[_UPVALUE18_[_FORV_14_]] then
  2493. for _FORV_18_, _FORV_19_ in pairs(_UPVALUE13_[_UPVALUE18_[_FORV_14_]]) do
  2494. table.insert({
  2495. walls = {},
  2496. baseWalls = {},
  2497. baseFloors = _FOR_,
  2498. baseCeils = _FOR_,
  2499. windows = _FOR_,
  2500. doors = {},
  2501. furnitures = {},
  2502. costs = _UPVALUE10_,
  2503. baseDoor = _UPVALUE24_
  2504. }.baseCeils, {
  2505. table.concat(_UPVALUE19_[_UPVALUE18_[_FORV_14_]], ","),
  2506. smallTextureName(_FORV_18_),
  2507. smallPathName(_FORV_19_)
  2508. })
  2509. end
  2510. end
  2511. end
  2512. for _FORV_14_, _FORV_15_ in pairs(_UPVALUE20_) do
  2513. table.insert({
  2514. walls = {},
  2515. baseWalls = {},
  2516. baseFloors = _FOR_,
  2517. baseCeils = _FOR_,
  2518. windows = _FOR_,
  2519. doors = {},
  2520. furnitures = {},
  2521. costs = _UPVALUE10_,
  2522. baseDoor = _UPVALUE24_
  2523. }.windows, {
  2524. _FORV_14_,
  2525. utf8.sub(_UPVALUE13_[_FORV_15_].la_carp4, 15),
  2526. getElementRotation(_FORV_15_)
  2527. })
  2528. end
  2529. for _FORV_14_, _FORV_15_ in pairs(_UPVALUE21_) do
  2530. table.insert({
  2531. walls = {},
  2532. baseWalls = {},
  2533. baseFloors = _FOR_,
  2534. baseCeils = _FOR_,
  2535. windows = _FOR_,
  2536. doors = {},
  2537. furnitures = {},
  2538. costs = _UPVALUE10_,
  2539. baseDoor = _UPVALUE24_
  2540. }.doors, {
  2541. _FORV_14_,
  2542. getElementModel(_FORV_15_),
  2543. utf8.sub(_UPVALUE13_[_FORV_15_][_UPVALUE22_[getElementModel(_FORV_15_)]], 8),
  2544. _UPVALUE23_[_FORV_15_]
  2545. })
  2546. end
  2547. for _FORV_14_, _FORV_15_ in pairs(_UPVALUE1_) do
  2548. table.insert({
  2549. walls = {},
  2550. baseWalls = {},
  2551. baseFloors = _FOR_,
  2552. baseCeils = _FOR_,
  2553. windows = _FOR_,
  2554. doors = {},
  2555. furnitures = {},
  2556. costs = _UPVALUE10_,
  2557. baseDoor = _UPVALUE24_
  2558. }.furnitures, {
  2559. getElementModel(_FORV_14_),
  2560. getElementPosition(_FORV_14_)
  2561. })
  2562. end
  2563. for _FORV_15_, _FORV_16_ in pairs(_UPVALUE25_) do
  2564. if _FORV_16_ == "inservice" or _FORV_16_ == "unlocked" then
  2565. _UPVALUE25_[_FORV_15_] = nil
  2566. end
  2567. end
  2568. if true then
  2569. saveDynamicData()
  2570. end
  2571. triggerServerEvent("intiEdit:saveInterior", localPlayer, _UPVALUE6_, toString({
  2572. walls = {},
  2573. baseWalls = {},
  2574. baseFloors = _FOR_,
  2575. baseCeils = _FOR_,
  2576. windows = _FOR_,
  2577. doors = {},
  2578. furnitures = {},
  2579. costs = _UPVALUE10_,
  2580. baseDoor = _UPVALUE24_
  2581. }), _UPVALUE10_)
  2582. end
  2583. elseif split(_UPVALUE2_, ":")[1] == "deleteFurniture" then
  2584. if isElement(_UPVALUE0_) then
  2585. if getElementModel(_UPVALUE0_) == 2332 or getElementModel(_UPVALUE0_) == 2964 then
  2586. exports.sas_accounts:showInfo("e", "Ezt nem t\195\182r\195\182lheted!")
  2587. return
  2588. end
  2589. if useableTvs[getElementModel(_UPVALUE0_)] then
  2590. _UPVALUE26_[getElementModel(_UPVALUE0_)] = (_UPVALUE26_[getElementModel(_UPVALUE0_)] or 0) - 1
  2591. else
  2592. addCashCosts(-prices.furnitures[getElementModel(_UPVALUE0_)])
  2593. end
  2594. _UPVALUE1_[_UPVALUE0_] = nil
  2595. destroyElement(_UPVALUE0_)
  2596. setActiveFurniture(false)
  2597. playSoundEx("files/sound/deletebasic.mp3")
  2598. end
  2599. elseif split(_UPVALUE2_, ":")[1] == "placeOnFloor" then
  2600. setElementPosition(_UPVALUE0_, getElementPosition(_UPVALUE0_))
  2601. elseif split(_UPVALUE2_, ":")[1] == "rotateMode" then
  2602. if split(_UPVALUE2_, ":")[2] == "on" then
  2603. _UPVALUE29_ = true
  2604. else
  2605. _UPVALUE29_ = false
  2606. end
  2607. elseif split(_UPVALUE2_, ":")[1] == "snap" then
  2608. if split(_UPVALUE2_, ":")[2] == "0" then
  2609. _UPVALUE30_ = false
  2610. else
  2611. _UPVALUE30_ = tonumber(split(_UPVALUE2_, ":")[2])
  2612. end
  2613. elseif split(_UPVALUE2_, ":")[1] == "snapr" then
  2614. if split(_UPVALUE2_, ":")[2] == "0" then
  2615. _UPVALUE31_ = false
  2616. else
  2617. _UPVALUE31_ = tonumber(split(_UPVALUE2_, ":")[2])
  2618. end
  2619. if _UPVALUE31_ then
  2620. if _UPVALUE31_ < 10 then
  2621. else
  2622. end
  2623. _UPVALUE32_ = math.ceil(_UPVALUE32_ / 5) * 5
  2624. end
  2625. elseif split(_UPVALUE2_, ":")[1] == "side" then
  2626. _UPVALUE33_ = not _UPVALUE33_
  2627. if _UPVALUE33_ then
  2628. _UPVALUE34_ = _UPVALUE35_ - _UPVALUE36_
  2629. else
  2630. _UPVALUE34_ = _UPVALUE35_ - _UPVALUE37_
  2631. end
  2632. elseif split(_UPVALUE2_, ":")[1] == "day" then
  2633. setDaytime()
  2634. playSound(":sas_vehicleradio/files/poweronoff.mp3")
  2635. elseif split(_UPVALUE2_, ":")[1] == "grid" then
  2636. if _UPVALUE38_ then
  2637. _UPVALUE39_ = not _UPVALUE39_
  2638. end
  2639. elseif split(_UPVALUE2_, ":")[1] == "sub" then
  2640. setMode("looking")
  2641. if split(_UPVALUE2_, ":")[2] == "ceil" then
  2642. showCeil(true)
  2643. showFloor(false)
  2644. reverseCamera(true)
  2645. elseif _UPVALUE40_ == "ceil" then
  2646. showCeil(false)
  2647. showFloor(true)
  2648. reverseCamera(false)
  2649. end
  2650. _UPVALUE40_ = split(_UPVALUE2_, ":")[2]
  2651. if _UPVALUE40_ == "premium" then
  2652. playSoundEx("files/sound/categorypremium.mp3")
  2653. else
  2654. playSoundEx("files/sound/category.mp3")
  2655. end
  2656. elseif split(_UPVALUE2_, ":")[1] == "main" then
  2657. setMode("looking")
  2658. if _UPVALUE40_ == "ceil" then
  2659. showCeil(false)
  2660. showFloor(true)
  2661. reverseCamera(false)
  2662. end
  2663. _UPVALUE8_ = split(_UPVALUE2_, ":")[2]
  2664. _UPVALUE40_ = _UPVALUE41_[_UPVALUE8_]
  2665. playSoundEx("files/sound/category.mp3")
  2666. elseif split(_UPVALUE2_, ":")[1] == "mode" then
  2667. modeClick((split(_UPVALUE2_, ":")))
  2668. end
  2669. end
  2670. elseif _UPVALUE3_ ~= "looking" and _ARG_0_ == "right" then
  2671. if _ARG_1_ == "down" and _UPVALUE42_ then
  2672. _UPVALUE42_, _UPVALUE43_ = false, nil
  2673. _UPVALUE44_ = false
  2674. _UPVALUE45_ = {}
  2675. end
  2676. elseif _UPVALUE3_ == "placeFurniture" then
  2677. if _UPVALUE46_ and _ARG_0_ == "left" and _ARG_1_ == "down" then
  2678. if getElementModel(_UPVALUE47_) == 2332 then
  2679. destroyElement(_UPVALUE47_)
  2680. _UPVALUE47_ = false
  2681. setMode("looking")
  2682. _UPVALUE5_ = {
  2683. "safe",
  2684. getElementPosition(_UPVALUE47_)
  2685. }
  2686. elseif getElementModel(_UPVALUE47_) == 2964 then
  2687. destroyElement(_UPVALUE47_)
  2688. _UPVALUE47_ = false
  2689. setMode("looking")
  2690. _UPVALUE5_ = {
  2691. "billiard",
  2692. getElementPosition(_UPVALUE47_)
  2693. }
  2694. _UPVALUE26_[getElementModel(_UPVALUE47_)] = (_UPVALUE26_[getElementModel(_UPVALUE47_)] or 0) + 1
  2695. else
  2696. _UPVALUE1_[_UPVALUE47_] = true
  2697. setElementCollisionsEnabled(_UPVALUE47_, true)
  2698. if useableTvs[getElementModel(_UPVALUE47_)] then
  2699. _UPVALUE26_[getElementModel(_UPVALUE47_)] = (_UPVALUE26_[getElementModel(_UPVALUE47_)] or 0) + 1
  2700. else
  2701. addCashCosts(prices.furnitures[getElementModel(_UPVALUE47_)])
  2702. end
  2703. _UPVALUE47_ = false
  2704. setMode("looking")
  2705. end
  2706. end
  2707. elseif _UPVALUE3_ == "setWallpaper" then
  2708. if _ARG_0_ == "left" and _ARG_1_ == "down" and _UPVALUE48_ then
  2709. textureSide()
  2710. end
  2711. elseif _UPVALUE3_ == "deleteDoor" then
  2712. if _ARG_0_ == "left" and _ARG_1_ == "down" then
  2713. if _UPVALUE49_[_UPVALUE50_] and _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] then
  2714. if _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] == "damaged" then
  2715. addCashCosts(prices.lock)
  2716. exports.sas_accounts:showInfo("i", "Az ajt\195\179 z\195\161rja s\195\169r\195\188lt volt, \195\169s " .. prices.lock .. "$-ba ker\195\188lt megjav\195\173tani.")
  2717. _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] = "inservice"
  2718. else
  2719. _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] = "unlocked"
  2720. end
  2721. end
  2722. _UPVALUE50_ = false
  2723. _UPVALUE51_ = false
  2724. _UPVALUE52_ = false
  2725. _UPVALUE53_ = false
  2726. playSoundEx("files/sound/deletebasic.mp3")
  2727. end
  2728. elseif _UPVALUE3_ == "deleteWindow" then
  2729. if _ARG_0_ == "left" and _ARG_1_ == "down" then
  2730. _UPVALUE50_ = false
  2731. _UPVALUE51_ = false
  2732. _UPVALUE52_ = false
  2733. _UPVALUE53_ = false
  2734. playSoundEx("files/sound/deletebasic.mp3")
  2735. end
  2736. elseif _UPVALUE3_ == "setWindow" then
  2737. if _ARG_0_ == "left" and _ARG_1_ == "down" then
  2738. _UPVALUE50_ = false
  2739. _UPVALUE51_ = false
  2740. _UPVALUE52_ = false
  2741. _UPVALUE53_ = false
  2742. playSoundEx("files/sound/buy" .. math.random(2) .. ".mp3")
  2743. end
  2744. elseif _UPVALUE3_ == "setDoor" then
  2745. if _ARG_0_ == "left" and _ARG_1_ == "down" then
  2746. if _UPVALUE15_[_UPVALUE50_] then
  2747. setCurrentBaseDoor()
  2748. end
  2749. if _UPVALUE49_[_UPVALUE50_] then
  2750. if _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] == "damaged" then
  2751. addCashCosts(prices.lock)
  2752. exports.sas_accounts:showInfo("s", "Sikeresen megjav\195\173tottad az ajt\195\179 z\195\161rj\195\161t!")
  2753. _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] = "inservice"
  2754. else
  2755. _UPVALUE25_[table.concat(_UPVALUE49_[_UPVALUE50_], ",")] = "unlocked"
  2756. end
  2757. end
  2758. _UPVALUE50_ = false
  2759. _UPVALUE51_ = false
  2760. _UPVALUE52_ = false
  2761. _UPVALUE53_ = false
  2762. _UPVALUE54_ = false
  2763. playSoundEx("files/sound/buy" .. math.random(2) .. ".mp3")
  2764. end
  2765. elseif _UPVALUE3_ == "setFloor" then
  2766. if _ARG_0_ == "left" then
  2767. if _ARG_1_ == "down" then
  2768. if _UPVALUE55_ then
  2769. _UPVALUE42_, _UPVALUE43_, _UPVALUE44_ = _UPVALUE55_, _UPVALUE56_, _UPVALUE57_
  2770. end
  2771. elseif _UPVALUE42_ then
  2772. playSoundEx("files/sound/buy" .. math.random(2) .. ".mp3")
  2773. loopTiles(applyTileTexture)
  2774. _UPVALUE45_ = {}
  2775. _UPVALUE42_, _UPVALUE43_ = false, false
  2776. _UPVALUE44_ = false
  2777. end
  2778. end
  2779. elseif _UPVALUE3_ == "setCeil" then
  2780. if _ARG_0_ == "left" then
  2781. if _ARG_1_ == "down" then
  2782. if _UPVALUE55_ then
  2783. _UPVALUE42_, _UPVALUE43_, _UPVALUE44_ = _UPVALUE55_, _UPVALUE56_, _UPVALUE57_
  2784. end
  2785. elseif _UPVALUE42_ then
  2786. playSoundEx("files/sound/buy" .. math.random(2) .. ".mp3")
  2787. loopTiles(applyCeilTexture)
  2788. _UPVALUE45_ = {}
  2789. _UPVALUE42_, _UPVALUE43_ = false, false
  2790. _UPVALUE44_ = false
  2791. end
  2792. end
  2793. elseif (_UPVALUE3_ == "drawWall_line" or _UPVALUE3_ == "drawWall_rect" or _UPVALUE3_ == "deleteWall_line" or _UPVALUE3_ == "deleteWall_rect") and _ARG_0_ == "left" then
  2794. if _ARG_1_ == "down" then
  2795. if _UPVALUE55_ then
  2796. _UPVALUE42_, _UPVALUE43_ = _UPVALUE55_, _UPVALUE56_
  2797. if _UPVALUE3_ == "drawWall_line" or _UPVALUE3_ == "deleteWall_line" then
  2798. _UPVALUE44_ = _UPVALUE57_
  2799. if _UPVALUE57_ == 1 or _UPVALUE57_ == 3 then
  2800. _UPVALUE58_ = "x"
  2801. else
  2802. _UPVALUE58_ = "y"
  2803. end
  2804. end
  2805. end
  2806. else
  2807. if not _UPVALUE42_ or not _UPVALUE55_ or (math.min(_UPVALUE42_, _UPVALUE55_) == math.max(_UPVALUE42_, _UPVALUE55_) or math.min(_UPVALUE43_, _UPVALUE56_) == math.max(_UPVALUE43_, _UPVALUE56_)) and _UPVALUE3_ == "drawWall_rect" then
  2808. elseif _UPVALUE3_ == "drawWall_line" then
  2809. loopTiles2(placeLineWalls)
  2810. elseif _UPVALUE3_ == "drawWall_rect" then
  2811. if 0 < math.min(_UPVALUE43_, _UPVALUE56_) - 1 then
  2812. for _FORV_15_ = math.min(_UPVALUE42_, _UPVALUE55_), math.max(_UPVALUE42_, _UPVALUE55_) do
  2813. createWall(_FORV_15_, math.min(_UPVALUE43_, _UPVALUE56_), 90)
  2814. end
  2815. end
  2816. if math.max(_UPVALUE43_, _UPVALUE56_) < _FOR_[5] then
  2817. for _FORV_15_ = math.min(_UPVALUE42_, _UPVALUE55_), math.max(_UPVALUE42_, _UPVALUE55_) do
  2818. createWall(_FORV_15_, math.max(_UPVALUE43_, _UPVALUE56_), 90)
  2819. end
  2820. end
  2821. if _FOR_ > 0 then
  2822. for _FORV_15_ = math.min(_UPVALUE43_, _UPVALUE56_), math.max(_UPVALUE43_, _UPVALUE56_) do
  2823. createWall(math.min(_UPVALUE42_, _UPVALUE55_), _FORV_15_, 0)
  2824. end
  2825. end
  2826. if math.max(_UPVALUE42_, _UPVALUE55_) < _FOR_[4] then
  2827. for _FORV_15_ = math.min(_UPVALUE43_, _UPVALUE56_), math.max(_UPVALUE43_, _UPVALUE56_) do
  2828. createWall(math.max(_UPVALUE42_, _UPVALUE55_), _FORV_15_, 0)
  2829. end
  2830. end
  2831. if math.max(_UPVALUE43_, _UPVALUE56_) < _FOR_[5] and math.max(_UPVALUE42_, _UPVALUE55_) < _UPVALUE27_[4] then
  2832. makeCorner(math.max(_UPVALUE42_, _UPVALUE55_), math.max(_UPVALUE43_, _UPVALUE56_), 270)
  2833. end
  2834. if 0 < math.min(_UPVALUE43_, _UPVALUE56_) - 1 and 0 < math.min(_UPVALUE42_, _UPVALUE55_) - 1 then
  2835. makeCorner(math.min(_UPVALUE42_, _UPVALUE55_), math.min(_UPVALUE43_, _UPVALUE56_), 90)
  2836. end
  2837. if 0 < math.min(_UPVALUE42_, _UPVALUE55_) - 1 and math.max(_UPVALUE43_, _UPVALUE56_) < _UPVALUE27_[5] then
  2838. makeCorner(math.min(_UPVALUE42_, _UPVALUE55_), math.max(_UPVALUE43_, _UPVALUE56_), 0)
  2839. end
  2840. if 0 < math.min(_UPVALUE43_, _UPVALUE56_) - 1 and math.max(_UPVALUE42_, _UPVALUE55_) < _UPVALUE27_[4] then
  2841. makeCorner(math.max(_UPVALUE42_, _UPVALUE55_), math.min(_UPVALUE43_, _UPVALUE56_), 180)
  2842. end
  2843. playSoundEx("files/sound/construct" .. math.random(2) .. ".mp3")
  2844. elseif _UPVALUE3_ == "deleteWall_line" then
  2845. if _UPVALUE58_ == "x" then
  2846. for _FORV_15_ = math.min(_UPVALUE42_, _UPVALUE55_), math.max(_UPVALUE42_, _UPVALUE55_) do
  2847. deleteWall(_FORV_15_, _UPVALUE59_)
  2848. end
  2849. elseif _UPVALUE58_ == "y" then
  2850. for _FORV_15_ = math.min(_UPVALUE43_, _UPVALUE56_), math.max(_UPVALUE43_, _UPVALUE56_) do
  2851. deleteWall(_UPVALUE59_, _FORV_15_)
  2852. end
  2853. else
  2854. deleteWall(_UPVALUE55_, _UPVALUE56_)
  2855. end
  2856. playSoundEx("files/sound/deletewall.mp3")
  2857. elseif _UPVALUE3_ == "deleteWall_rect" then
  2858. for _FORV_15_ = math.min(_UPVALUE42_, _UPVALUE55_), math.max(_UPVALUE42_, _UPVALUE55_) do
  2859. for _FORV_19_ = math.min(_UPVALUE43_, _UPVALUE56_), math.max(_UPVALUE43_, _UPVALUE56_) do
  2860. deleteWall(_FORV_15_, _FORV_19_)
  2861. end
  2862. end
  2863. playSoundEx("files/sound/deletewall.mp3")
  2864. end
  2865. _UPVALUE58_ = false
  2866. _UPVALUE42_, _UPVALUE43_ = false, false
  2867. _UPVALUE45_ = {}
  2868. end
  2869. end
  2870. end
  2871. function modeClick(_ARG_0_)
  2872. if _ARG_0_[2] == "setWallpaper" then
  2873. if _UPVALUE0_ == _ARG_0_[3] then
  2874. setMode("looking")
  2875. else
  2876. _UPVALUE0_ = _ARG_0_[3]
  2877. if _UPVALUE1_ ~= "setWallpaper" then
  2878. setMode("setWallpaper")
  2879. end
  2880. end
  2881. elseif _ARG_0_[2] == "placeFurniture" then
  2882. if _UPVALUE2_ and getElementModel(_UPVALUE2_) == _ARG_0_[3] then
  2883. setMode("looking")
  2884. else
  2885. if useableTvs[tonumber(_ARG_0_[3])] then
  2886. if (_UPVALUE3_[tonumber(_ARG_0_[3])] or 0) - (_UPVALUE4_[tonumber(_ARG_0_[3])] or 0) <= 0 then
  2887. _UPVALUE5_ = {
  2888. "buyPPFurniture",
  2889. (tonumber(_ARG_0_[3]))
  2890. }
  2891. return
  2892. end
  2893. end
  2894. if _UPVALUE1_ ~= "placeFurniture" then
  2895. if tonumber(_ARG_0_[3]) == 2964 then
  2896. _UPVALUE6_ = 0
  2897. for _FORV_6_ = 1, #getElementsByType("object", getRootElement(), true) do
  2898. if getElementModel(getElementsByType("object", getRootElement(), true)[_FORV_6_]) == 2964 then
  2899. exports.sas_accounts:showInfo("e", "M\195\161r van egy bill\195\161rdasztal ebben az interiorban.")
  2900. return
  2901. end
  2902. end
  2903. end
  2904. if #getElementsByType("object", getRootElement(), true) >= _UPVALUE7_ then
  2905. exports.sas_accounts:showInfo("e", "El\195\169rted a maxim\195\161lis objektumsz\195\161mot! (" .. #getElementsByType("object", getRootElement(), true) .. "/" .. _UPVALUE7_ .. " db)")
  2906. return
  2907. end
  2908. setMode("placeFurniture")
  2909. _UPVALUE2_ = createObject(tonumber(_ARG_0_[3]), 0, 0, 0, 0, 0, _UPVALUE6_)
  2910. setObjectBreakable(_UPVALUE2_, false)
  2911. setElementDoubleSided(_UPVALUE2_, true)
  2912. setElementCollisionsEnabled(_UPVALUE2_, false)
  2913. setElementInteriorAndDimension(_UPVALUE2_, 1)
  2914. else
  2915. setElementModel(_UPVALUE2_, (tonumber(_ARG_0_[3])))
  2916. end
  2917. end
  2918. elseif _ARG_0_[2] == "setCeil" then
  2919. if _UPVALUE0_ == _ARG_0_[3] then
  2920. setMode("looking")
  2921. else
  2922. _UPVALUE0_ = _ARG_0_[3]
  2923. if _UPVALUE1_ ~= "setCeil" then
  2924. setMode("setCeil")
  2925. end
  2926. end
  2927. elseif _ARG_0_[2] == "setFloor" then
  2928. if _UPVALUE0_ == _ARG_0_[3] then
  2929. setMode("looking")
  2930. else
  2931. _UPVALUE0_ = _ARG_0_[3]
  2932. if _UPVALUE1_ ~= "setFloor" then
  2933. setMode("setFloor")
  2934. end
  2935. end
  2936. elseif _ARG_0_[2] == "setWindow" then
  2937. if _UPVALUE0_ == _ARG_0_[3] then
  2938. setMode("looking")
  2939. else
  2940. _UPVALUE0_ = _ARG_0_[3]
  2941. if _UPVALUE1_ ~= "setWindow" then
  2942. setMode("setWindow")
  2943. end
  2944. end
  2945. elseif _ARG_0_[2] == "setDoor" then
  2946. if _UPVALUE0_ == _ARG_0_[3] then
  2947. setMode("looking")
  2948. else
  2949. _UPVALUE0_ = _ARG_0_[3]
  2950. if _UPVALUE1_ ~= "setDoor" then
  2951. setMode("setDoor")
  2952. end
  2953. end
  2954. elseif _UPVALUE1_ == _ARG_0_[2] then
  2955. setMode("looking")
  2956. else
  2957. setMode(_ARG_0_[2])
  2958. end
  2959. end
  2960. function drawItemRectangle(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_, _ARG_5_, _ARG_6_, _ARG_7_)
  2961. if _ARG_4_ then
  2962. dxDrawRectangle(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_, _UPVALUE1_ - _UPVALUE2_, _UPVALUE5_ - _UPVALUE6_ * 2, tocolor(124, 197, 118))
  2963. if _UPVALUE0_ >= _UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ and _UPVALUE3_ >= _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ and _UPVALUE0_ <= _UPVALUE1_ * _ARG_0_ and _UPVALUE3_ <= _UPVALUE4_ - _UPVALUE5_ + _UPVALUE5_ - _UPVALUE6_ then
  2964. _UPVALUE7_ = _ARG_3_
  2965. dxDrawRectangle(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ + 2, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ + 2, _UPVALUE1_ - _UPVALUE2_ - 4, _UPVALUE5_ - _UPVALUE6_ * 2 - 4, tocolor(80, 80, 80))
  2966. else
  2967. dxDrawRectangle(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ + 2, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ + 2, _UPVALUE1_ - _UPVALUE2_ - 4, _UPVALUE5_ - _UPVALUE6_ * 2 - 4, tocolor(40, 40, 40))
  2968. end
  2969. elseif _UPVALUE0_ >= _UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ and _UPVALUE3_ >= _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ and _UPVALUE0_ <= _UPVALUE1_ * _ARG_0_ and _UPVALUE3_ <= _UPVALUE4_ - _UPVALUE5_ + _UPVALUE5_ - _UPVALUE6_ then
  2970. _UPVALUE7_ = _ARG_3_
  2971. dxDrawRectangle(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_, _UPVALUE1_ - _UPVALUE2_, _UPVALUE5_ - _UPVALUE6_ * 2, tocolor(80, 80, 80))
  2972. else
  2973. dxDrawRectangle(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_, _UPVALUE1_ - _UPVALUE2_, _UPVALUE5_ - _UPVALUE6_ * 2, tocolor(40, 40, 40))
  2974. end
  2975. if _ARG_5_ then
  2976. if _ARG_6_ == "door" then
  2977. dxDrawImage(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ + _UPVALUE8_ + respc(16), _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ + _UPVALUE8_, _UPVALUE1_ - _UPVALUE2_ - _UPVALUE8_ * 2 - respc(32), _UPVALUE1_ - _UPVALUE2_ - _UPVALUE8_ * 2, "files/" .. _ARG_1_ .. ".png")
  2978. elseif _ARG_6_ then
  2979. dxDrawImageSection(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ + _UPVALUE8_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ + _UPVALUE8_, _UPVALUE1_ - _UPVALUE2_ - _UPVALUE8_ * 2, _UPVALUE1_ - _UPVALUE2_ - _UPVALUE8_ * 2, 32, 32, 64, 64, "files/" .. _ARG_1_ .. ".png")
  2980. else
  2981. dxDrawImage(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_ + _UPVALUE8_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_ + _UPVALUE8_, _UPVALUE1_ - _UPVALUE2_ - _UPVALUE8_ * 2, _UPVALUE1_ - _UPVALUE2_ - _UPVALUE8_ * 2, "files/" .. _ARG_1_ .. ".png")
  2982. end
  2983. else
  2984. dxDrawImage(_UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE6_, _UPVALUE1_ - _UPVALUE2_, _UPVALUE1_ - _UPVALUE2_, "files/" .. _ARG_1_ .. ".png")
  2985. end
  2986. dxDrawText(_ARG_2_, _UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE1_ - _UPVALUE8_, _UPVALUE1_ * _ARG_0_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE5_ - _UPVALUE6_, tocolor(255, 255, 255), 0.75, _UPVALUE9_, "center", "center", false, false, false, true)
  2987. if _ARG_7_ then
  2988. dxDrawText(_ARG_7_, _UPVALUE1_ * (_ARG_0_ - 1) + _UPVALUE2_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE8_ * 2.5, _UPVALUE1_ * _ARG_0_, _UPVALUE4_ - _UPVALUE5_ + _UPVALUE8_ * 4, tocolor(255, 255, 255), 0.75, _UPVALUE9_, "center", "center", false, false, false, true)
  2989. end
  2990. return _ARG_0_ + 1
  2991. end
  2992. function drawIconText(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_, _ARG_5_, _ARG_6_)
  2993. if _ARG_4_ then
  2994. dxDrawLine(_ARG_0_ + _UPVALUE0_, _ARG_1_ + _UPVALUE0_, _ARG_0_ + _UPVALUE0_, _ARG_1_ + _UPVALUE1_ - _UPVALUE0_, tocolor(255, 255, 255), 2)
  2995. _ARG_0_ = _ARG_0_ + _UPVALUE0_ * 3
  2996. end
  2997. dxDrawImage(_ARG_0_ + _UPVALUE0_, _ARG_1_ + _UPVALUE0_, _UPVALUE1_ - _UPVALUE0_ * 2, _UPVALUE1_ - _UPVALUE0_ * 2, "files/icons/" .. _ARG_2_ .. ".png")
  2998. dxDrawText(_ARG_3_, _ARG_0_ + _UPVALUE1_ + _UPVALUE0_, _ARG_1_, 0, _ARG_1_ + _UPVALUE1_, tocolor(255, 255, 255), 1, _UPVALUE2_, "left", "center")
  2999. if _UPVALUE3_ == _ARG_5_ then
  3000. dxDrawLine(_ARG_0_ + _UPVALUE0_, _ARG_1_ - 1 + _UPVALUE1_, _ARG_0_ + _UPVALUE1_ + dxGetTextWidth(_ARG_3_, 1, _UPVALUE2_) + _UPVALUE0_, _ARG_1_ - 1 + _UPVALUE1_, tocolor(124, 197, 118), 2)
  3001. elseif _UPVALUE4_ >= _ARG_0_ + _UPVALUE0_ and _UPVALUE4_ <= _ARG_0_ + _UPVALUE1_ + dxGetTextWidth(_ARG_3_, 1, _UPVALUE2_) + _UPVALUE0_ and _ARG_1_ <= _UPVALUE5_ and _UPVALUE5_ <= _ARG_1_ + _UPVALUE1_ then
  3002. _UPVALUE6_ = "main:" .. _ARG_5_
  3003. dxDrawLine(_ARG_0_ + _UPVALUE0_, _ARG_1_ - 1 + _UPVALUE1_, _ARG_0_ + _UPVALUE1_ + dxGetTextWidth(_ARG_3_, 1, _UPVALUE2_) + _UPVALUE0_, _ARG_1_ - 1 + _UPVALUE1_, tocolor(124, 197, 118, 200), 2)
  3004. end
  3005. return _ARG_0_ + _UPVALUE1_ + dxGetTextWidth(_ARG_3_, 1, _UPVALUE2_) + _UPVALUE7_
  3006. end
  3007. function drawText(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_)
  3008. if not _ARG_4_ then
  3009. dxDrawText(" / ", _ARG_0_ + dxGetTextWidth(_ARG_2_, 1, _UPVALUE0_), _ARG_1_, 0, _ARG_1_ + _UPVALUE1_, tocolor(175, 175, 175), 1, _UPVALUE0_, "left", "center", false, false, false, true)
  3010. end
  3011. if _ARG_4_ then
  3012. else
  3013. end
  3014. if _UPVALUE4_ == _ARG_3_ then
  3015. dxDrawText(_ARG_2_, _ARG_0_, _ARG_1_, 0, _ARG_1_ + _UPVALUE1_, tocolor(124, 197, 118), 1, _UPVALUE0_, "left", "center", false, false, false, true)
  3016. elseif _ARG_0_ <= _UPVALUE5_ and _UPVALUE5_ <= _ARG_0_ + (dxGetTextWidth(_ARG_2_, 1, _UPVALUE0_) + _UPVALUE2_ * 2 + _UPVALUE3_) and _ARG_1_ <= _UPVALUE6_ and _UPVALUE6_ <= _ARG_1_ + _UPVALUE1_ then
  3017. _UPVALUE7_ = "sub:" .. _ARG_3_
  3018. dxDrawText(_ARG_2_, _ARG_0_, _ARG_1_, 0, _ARG_1_ + _UPVALUE1_, tocolor(255, 255, 255), 1, _UPVALUE0_, "left", "center", false, false, false, true)
  3019. else
  3020. dxDrawText(_ARG_2_, _ARG_0_, _ARG_1_, 0, _ARG_1_ + _UPVALUE1_, tocolor(160, 160, 160), 1, _UPVALUE0_, "left", "center", false, false, false, true)
  3021. end
  3022. return _ARG_0_ + (dxGetTextWidth(_ARG_2_, 1, _UPVALUE0_) + _UPVALUE2_ * 2 + _UPVALUE3_)
  3023. end
  3024. function drawSideIcon(_ARG_0_, _ARG_1_, _ARG_2_, _ARG_3_, _ARG_4_, _ARG_5_)
  3025. if _UPVALUE0_ >= _UPVALUE1_ + _UPVALUE2_ and _UPVALUE3_ >= _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * (_ARG_0_ - 1) and _UPVALUE0_ <= _UPVALUE1_ + _UPVALUE2_ + _UPVALUE5_ and _UPVALUE3_ <= _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * _ARG_0_ then
  3026. _UPVALUE6_ = _ARG_3_
  3027. dxDrawImage(_UPVALUE1_ + _UPVALUE2_, _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * (_ARG_0_ - 1), _UPVALUE5_, _UPVALUE5_, "files/icons/" .. (_ARG_4_ and _ARG_1_ or _ARG_2_) .. ".png", 0, 0, 0, tocolor(124, 197, 118))
  3028. dxDrawRectangle(_UPVALUE1_ - _UPVALUE2_ - (dxGetTextWidth(_ARG_5_, 1, _UPVALUE7_) + respc(15)), _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * (_ARG_0_ - 0.5) - _UPVALUE8_ * 1.25 / 2, dxGetTextWidth(_ARG_5_, 1, _UPVALUE7_) + respc(15), _UPVALUE8_ * 1.25, tocolor(0, 0, 0, 125))
  3029. dxDrawText(_ARG_5_, _UPVALUE1_ - _UPVALUE2_ - (dxGetTextWidth(_ARG_5_, 1, _UPVALUE7_) + respc(15)), _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * (_ARG_0_ - 0.5) - _UPVALUE8_ * 1.25 / 2, _UPVALUE1_ - _UPVALUE2_, _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * (_ARG_0_ - 0.5) + _UPVALUE8_ * 1.25 / 2, tocolor(255, 255, 255), 1, _UPVALUE7_, "center", "center", false, false, false, true)
  3030. else
  3031. dxDrawImage(_UPVALUE1_ + _UPVALUE2_, _UPVALUE4_ + _UPVALUE2_ + _UPVALUE2_ * _ARG_0_ + _UPVALUE5_ * (_ARG_0_ - 1), _UPVALUE5_, _UPVALUE5_, "files/icons/" .. (_ARG_4_ and _ARG_1_ or _ARG_2_) .. ".png", 0, 0, 0, tocolor(255, 255, 255))
  3032. end
  3033. return _ARG_0_ + 1
  3034. end
  3035. function drawSideGUI()
  3036. dxDrawRectangle(_UPVALUE0_, _UPVALUE1_, _UPVALUE2_, _UPVALUE3_, tocolor(0, 0, 0, 100))
  3037. if _UPVALUE4_ >= _UPVALUE0_ and _UPVALUE5_ >= _UPVALUE1_ and _UPVALUE5_ <= _UPVALUE1_ + _UPVALUE3_ then
  3038. _UPVALUE6_ = "side"
  3039. end
  3040. if _UPVALUE7_ then
  3041. dxDrawImage(_UPVALUE0_, _UPVALUE1_, _UPVALUE3_, _UPVALUE3_, "files/icons/arrow.png", 0, 0, 0, tocolor(255, 255, 255))
  3042. else
  3043. dxDrawImage(_UPVALUE0_, _UPVALUE1_, _UPVALUE3_, _UPVALUE3_, "files/icons/arrow.png", 180, 0, 0, tocolor(255, 255, 255))
  3044. end
  3045. dxDrawRectangle(_UPVALUE0_, _UPVALUE1_ + _UPVALUE3_, _UPVALUE2_, _UPVALUE8_ - _UPVALUE3_, tocolor(0, 0, 0, 175))
  3046. if _UPVALUE7_ then
  3047. if _UPVALUE9_ then
  3048. elseif _UPVALUE12_ or _UPVALUE13_ == "placeFurniture" then
  3049. if not _UPVALUE14_ then
  3050. elseif _UPVALUE14_ == 5 then
  3051. else
  3052. end
  3053. if not _UPVALUE15_ then
  3054. elseif _UPVALUE15_ == 5 then
  3055. else
  3056. end
  3057. end
  3058. end
  3059. end
  3060. function addCashCosts(_ARG_0_, _ARG_1_)
  3061. if _UPVALUE0_ and _ARG_0_ >= 0 and not _ARG_1_ then
  3062. playSoundEx("files/sound/buy" .. math.random(2) .. ".mp3")
  3063. end
  3064. _UPVALUE1_ = _UPVALUE1_ + _ARG_0_
  3065. _UPVALUE2_ = thousandsStepper(_UPVALUE1_ - _UPVALUE3_)
  3066. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement