Advertisement
Guest User

Untitled

a guest
Jul 2nd, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.06 KB | None | 0 0
  1. -- PROGRAMME CAISSE --
  2.  
  3. -- PARTIE 1 --
  4. -- INSTALLATION DES APIS/HARDWARE --
  5.  
  6. local args = {...}
  7. local monX, monY = term.getSize()
  8.  
  9. if not disk.isPresent("top") then
  10. print("Installer un diskDrive au dessus de la machine et insérer votre carte")
  11. os.sleep(5)
  12. fs.delete("BSAPI")
  13. os.reboot()
  14. end
  15.  
  16. if not fs.exists("BSAPI") or args[1] == "true" then
  17. shell.run("pastebin get 1CFqeP11 BSAPI")
  18. PRODUCT1 = "BAGUETTE"
  19. PRODUCT2 = "BAGUETTE"
  20. PRODUCT3 = "BAGUETTE"
  21. PRODUCT4 = "BAGUETTE"
  22. PRODUCT5 = "BAGUETTE"
  23. PRODUCT6 = "BAGUETTE"
  24. PRODUCT7 = "BAGUETTE"
  25. PRODUCT8 = "BAGUETTE"
  26. PRODUCT9 = "BAGUETTE"
  27.  
  28. PRICE1 = "20"
  29. PRICE2 = "20"
  30. PRICE3 = "20"
  31. PRICE4 = "20"
  32. PRICE5 = "20"
  33. PRICE6 = "20"
  34. PRICE7 = "20"
  35. PRICE8 = "20"
  36. PRICE9 = "20"
  37.  
  38.  
  39.  
  40. print("Code ?")
  41. code = read("*")
  42. print("Lecture de votre carte en cours ...")
  43.  
  44. if code == "1234" then
  45. print("Code bon.")
  46. PASSWORD = code
  47. else
  48. print("Code faux, réessayer.")
  49. os.sleep(2)
  50. fs.delete("BSAPI")
  51. os.reboot()
  52. end
  53.  
  54. USERNAMEENCODE = disk.getLabel("top")
  55. NAME = "fghd"
  56. FIRSTNAME = "dfgd"
  57.  
  58. sleep(1)
  59. print("Enregistrement de votre compte commerçant terminé.")
  60. sleep(2)
  61. term.clear()
  62.  
  63.  
  64.  
  65. USERNAME = nil
  66. ADMIN = "0"
  67. DEVISE = "EUROS"
  68. CLIENT_PASSWORD = "1234"
  69. end
  70.  
  71. if not fs.exists("json") or args[1] == "true" then
  72. shell.run("pastebin get 4nRg9CHU json")
  73. end
  74. os.loadAPI("BSAPI")
  75. os.loadAPI("json")
  76.  
  77. for a,b in pairs(rs.getSides()) do
  78. if peripheral.getType(b) == 'modem' then
  79. rednet.open(b)
  80. break
  81. end
  82. end
  83. for a,b in pairs(rs.getSides()) do
  84. if peripheral.getType(b) == 'printer' then
  85. printer = peripheral.wrap(b)
  86. break
  87. end
  88. end
  89.  
  90. -- PARTIE 2 --
  91. -- FENETRES --
  92.  
  93.  
  94. function window(monX, monY)
  95. local monX, monY = term.getSize()
  96. BSAPI.drawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  97.  
  98. BSAPI.drawLabel('vente1',2,3,PRODUCT1.." - "..PRICE1.." "..DEVISE,colors.grey)
  99. BSAPI.drawTextbox('QUANTITY1',2,4,12 ,QUANTITY1)
  100.  
  101. BSAPI.drawLabel('vente2',30,3,PRODUCT2.." - "..PRICE2.." "..DEVISE,colors.grey)
  102. BSAPI.drawTextbox('QUANTITY2',30,4,40,QUANTITY2)
  103.  
  104. BSAPI.drawLabel('vente3',2,6,PRODUCT3.." - "..PRICE3.." "..DEVISE,colors.grey)
  105. BSAPI.drawTextbox('QUANTITY3',2,7,12 ,QUANTITY3)
  106.  
  107. BSAPI.drawLabel('vente4',30,6,PRODUCT4.." - "..PRICE4.." "..DEVISE,colors.grey)
  108. BSAPI.drawTextbox('QUANTITY4',30,7,40,QUANTITY4)
  109.  
  110. BSAPI.drawLabel('vente5',2,9,PRODUCT5.." - "..PRICE5.." "..DEVISE,colors.grey)
  111. BSAPI.drawTextbox('QUANTITY5',2,10,12 ,QUANTITY5)
  112.  
  113. BSAPI.drawLabel('vente6',30,9,PRODUCT6.." - "..PRICE6.." "..DEVISE,colors.grey)
  114. BSAPI.drawTextbox('QUANTITY6',30,10,40,QUANTITY6)
  115.  
  116. BSAPI.drawLabel('vente7',2,12,PRODUCT7.." - "..PRICE7.." "..DEVISE,colors.grey)
  117. BSAPI.drawTextbox('QUANTITY7',2,13,12 ,QUANTITY7)
  118.  
  119. BSAPI.drawLabel('vente8',30,12,PRODUCT8.." - "..PRICE8.." "..DEVISE,colors.grey)
  120. BSAPI.drawTextbox('QUANTITY8',30,13,40,QUANTITY8)
  121.  
  122. BSAPI.drawLabel('vente9',2,15,PRODUCT9.." - "..PRICE9.." "..DEVISE,colors.grey)
  123. BSAPI.drawTextbox('QUANTITY9',2,16,12 ,QUANTITY9)
  124.  
  125. BSAPI.drawLabel('modifvente',30,15,"Code ?",colors.grey)
  126. BSAPI.drawTextbox('MODIFVENTE',30,16,40,"****")
  127.  
  128. BSAPI.drawButton("confirm_btn", 1, monY, monX, monY, colors.green, "Acheter")
  129. end
  130.  
  131. function window2()
  132. while true do
  133. event, a1, a2, a3 = os.pullEvent()
  134.  
  135. if a1 == "QUANTITY1" then
  136. if a2 == "" then
  137. elseif ADMIN == 1 then
  138. if not tonumber(a2) then
  139. PRODUCT1 = a2
  140. BSAPI.changeValue("QUANTITY1", "value", "")
  141. BSAPI.closeWindow()
  142. ADMIN = "0"
  143. shell.run("100")
  144. else
  145. PRICE1 = tonumber(a2)
  146. BSAPI.changeValue("QUANTITY1", "value", "")
  147. BSAPI.closeWindow()
  148. ADMIN = "0"
  149. shell.run("100")
  150. end
  151. else
  152. if not tonumber(a2) then
  153. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  154. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  155. BSAPI.changeValue("QUANTITY1", "value", "")
  156. else
  157. QUANTITY1 = tonumber(a2)
  158. end
  159. end
  160.  
  161. elseif a1 == "QUANTITY2" then
  162. if a2 == "" then
  163. elseif ADMIN == 1 then
  164. if not tonumber(a2) then
  165. PRODUCT2 = a2
  166. BSAPI.changeValue("QUANTITY2", "value", "")
  167. BSAPI.closeWindow()
  168. ADMIN = "0"
  169. shell.run("100")
  170. else
  171. PRICE2 = tonumber(a2)
  172. BSAPI.changeValue("QUANTITY2", "value", "")
  173. BSAPI.closeWindow()
  174. ADMIN = "0"
  175. shell.run("100")
  176. end
  177. else
  178. if not tonumber(a2) then
  179. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  180. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  181. BSAPI.changeValue("QUANTITY2", "value", "")
  182. else
  183. QUANTITY2 = tonumber(a2)
  184. end
  185. end
  186.  
  187. elseif a1 == "QUANTITY3" then
  188. if a2 == "" then
  189. elseif ADMIN == 1 then
  190. if not tonumber(a2) then
  191. PRODUCT3 = a2
  192. BSAPI.changeValue("QUANTITY3", "value", "")
  193. BSAPI.closeWindow()
  194. ADMIN = "0"
  195. shell.run("100")
  196. else
  197. PRICE3 = tonumber(a2)
  198. BSAPI.changeValue("QUANTITY3", "value", "")
  199. BSAPI.closeWindow()
  200. ADMIN = "0"
  201. shell.run("100")
  202. end
  203. else
  204. if not tonumber(a2) then
  205. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  206. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  207. BSAPI.changeValue("QUANTIT3", "value", "")
  208. else
  209. QUANTITY3 = tonumber(a2)
  210. end
  211. end
  212.  
  213. elseif a1 == "QUANTITY4" then
  214. if a2 == "" then
  215. elseif ADMIN == 1 then
  216. if not tonumber(a2) then
  217. PRODUCT4 = a2
  218. BSAPI.changeValue("QUANTITY4", "value", "")
  219. BSAPI.closeWindow()
  220. ADMIN = "0"
  221. shell.run("100")
  222. else
  223. PRICE4 = tonumber(a2)
  224. BSAPI.changeValue("QUANTITY4", "value", "")
  225. BSAPI.closeWindow()
  226. ADMIN = "0"
  227. shell.run("100")
  228. end
  229. else
  230. if not tonumber(a2) then
  231. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  232. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  233. BSAPI.changeValue("QUANTITY4", "value", "")
  234. else
  235. QUANTITY4 = tonumber(a2)
  236. end
  237. end
  238.  
  239. elseif a1 == "QUANTITY5" then
  240. if a2 == "" then
  241. elseif ADMIN == 1 then
  242. if not tonumber(a2) then
  243. PRODUCT5 = a2
  244. BSAPI.changeValue("QUANTITY5", "value", "")
  245. BSAPI.closeWindow()
  246. ADMIN = "0"
  247. shell.run("100")
  248. else
  249. PRICE5 = tonumber(a2)
  250. BSAPI.changeValue("QUANTITY5", "value", "")
  251. BSAPI.closeWindow()
  252. ADMIN = "0"
  253. shell.run("100")
  254. end
  255. else
  256. if not tonumber(a2) then
  257. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  258. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  259. BSAPI.changeValue("QUANTITY5", "value", "")
  260. else
  261. QUANTITY5 = tonumber(a2)
  262. end
  263. end
  264.  
  265. elseif a1 == "QUANTITY6" then
  266. if a2 == "" then
  267. elseif ADMIN == 1 then
  268. if not tonumber(a2) then
  269. PRODUCT6 = a2
  270. BSAPI.changeValue("QUANTITY6", "value", "")
  271. BSAPI.closeWindow()
  272. ADMIN = "0"
  273. shell.run("100")
  274. else
  275. PRICE6 = tonumber(a2)
  276. BSAPI.changeValue("QUANTITY6", "value", "")
  277. BSAPI.closeWindow()
  278. ADMIN = "0"
  279. shell.run("100")
  280. end
  281. else
  282. if not tonumber(a2) then
  283. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  284. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  285. BSAPI.changeValue("QUANTITY2", "value", "")
  286. else
  287. QUANTITY6 = tonumber(a2)
  288. end
  289. end
  290.  
  291. elseif a1 == "QUANTITY7" then
  292. if a2 == "" then
  293. elseif ADMIN == 1 then
  294. if not tonumber(a2) then
  295. PRODUCT7 = a2
  296. BSAPI.changeValue("QUANTITY7", "value", "")
  297. BSAPI.closeWindow()
  298. ADMIN = "0"
  299. shell.run("100")
  300. else
  301. PRICE7 = tonumber(a2)
  302. BSAPI.changeValue("QUANTITY7", "value", "")
  303. BSAPI.closeWindow()
  304. ADMIN = "0"
  305. shell.run("100")
  306. end
  307. else
  308. if not tonumber(a2) then
  309. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  310. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  311. BSAPI.changeValue("QUANTITY7", "value", "")
  312. else
  313. QUANTITY7 = tonumber(a2)
  314. end
  315. end
  316.  
  317. elseif a1 == "QUANTITY8" then
  318. if a2 == "" then
  319. elseif ADMIN == 1 then
  320. if not tonumber(a2) then
  321. PRODUCT8 = a2
  322. BSAPI.changeValue("QUANTITY8", "value", "")
  323. BSAPI.closeWindow()
  324. ADMIN = "0"
  325. shell.run("100")
  326. else
  327. PRICE8 = tonumber(a2)
  328. BSAPI.changeValue("QUANTITY8", "value", "")
  329. BSAPI.closeWindow()
  330. ADMIN = "0"
  331. shell.run("100")
  332. end
  333. else
  334. if not tonumber(a2) then
  335. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  336. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  337. BSAPI.changeValue("QUANTITY8", "value", "")
  338. else
  339. QUANTITY8 = tonumber(a2)
  340. end
  341. end
  342.  
  343. elseif a1 == "QUANTITY9" then
  344. if a2 == "" then
  345. elseif ADMIN == 1 then
  346. if not tonumber(a2) then
  347. PRODUCT9 = a2
  348. BSAPI.changeValue("QUANTITY9", "value", "")
  349. BSAPI.closeWindow()
  350. ADMIN = "0"
  351. shell.run("100")
  352. else
  353. PRICE9 = tonumber(a2)
  354. BSAPI.changeValue("QUANTITY9", "value", "")
  355. BSAPI.closeWindow()
  356. ADMIN = "0"
  357. shell.run("100")
  358. end
  359. else
  360. if not tonumber(a2) then
  361. BSAPI.openDialog("QUANTITY_dialog", "Quantité invalide", " La quantité doit être composé de chiffres !")
  362. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  363. BSAPI.changeValue("QUANTITY9", "value", "")
  364. else
  365. QUANTITY9 = tonumber(a2)
  366. end
  367. end
  368.  
  369. elseif a1 == "MODIFVENTE" then
  370. if a2 == "" then
  371. --Do nothing
  372. elseif not tonumber(a2) then
  373. BSAPI.openDialog("CODE_dialog", "Code invalide", " Le code doit être composé de chiffres !")
  374. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  375. BSAPI.changeValue("MODIFVENTE", "value", "")
  376. else
  377. if PASSWORD == a2 then
  378. BSAPI.openDialog("CODE_dialog", "ADMIN MODE", "Pour modifier un prix, rentrez un nombre - un nom, rentrez des lettres")
  379. BSAPI.redrawWindow("ADMIN - Caisse de "..FIRSTNAME.." "..NAME,false)
  380. BSAPI.changeValue("MODIFVENTE", "value", "")
  381. ADMIN = 1
  382. else
  383. if CLIENT_PASSWORD == a2 then
  384. CONFIRM_ACHAT = 1
  385. else
  386. BSAPI.openDialog("CODE_dialog", "Code invalide", " Veuillez réessayer")
  387. BSAPI.redrawWindow("Caisse de "..FIRSTNAME.." "..NAME,false)
  388. BSAPI.changeValue("MODIFVENTE", "value", "")
  389. CONFIRM_ACHAT = 0
  390. end
  391. end
  392. end
  393. end
  394. end
  395. end
  396.  
  397. parallel.waitForAll(window, window2, BSAPI.eventHandler)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement