Sanguin

CC Tic Tac Toe

Apr 8th, 2015
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 21.04 KB | None | 0 0
  1. shell.run("clear")
  2. local key=0
  3. local z1=1
  4. local z2=2
  5. local z3=3
  6. local z4=4
  7. local z5=5
  8. local z6=6
  9. local z7=7
  10. local z8=8
  11. local z9=9
  12. local win=0
  13. local winner=0
  14. local turnover=0
  15. local bot=0
  16. print("SKIPP3Rs TIC TAC TODESFALLE v1.0r1")
  17. print()
  18. print()
  19. print()
  20. repeat
  21. write("Players: ")
  22. local player=read()
  23. if player=="1" then
  24. local botchoose=0
  25. repeat
  26. repeat
  27. turnover=0
  28. shell.run("clear")
  29. print(z1," ",z2," ",z3)
  30. print()
  31. print(z4," ",z5," ",z6)
  32. print()
  33. print(z7," ",z8," ",z9)
  34. print()
  35. write("Choose: ")
  36. local choose=read()
  37. if choose=="1" then
  38. if z1==1 then
  39. z1 = "X"
  40. turnover=1
  41. else
  42. end
  43. else if choose=="2" then
  44. if z2==2 then
  45. z2="X"
  46. turnover=1
  47. else
  48. end
  49. else if choose=="3" then
  50. if z3==3 then
  51. z3="X"
  52. turnover=1
  53. else
  54. end
  55. else if choose=="4" then
  56. if z4==4 then
  57. z4="X"
  58. turnover=1
  59. else
  60. end
  61. else if choose=="5" then
  62. if z5==5 then
  63. z5="X"
  64. turnover=1
  65. else
  66. end
  67. else if choose=="6" then
  68. if z6==6 then
  69. z6="X"
  70. turnover=1
  71. else
  72. end
  73. else if choose=="7" then
  74. if z7==7 then
  75. z7="X"
  76. turnover=1
  77. else
  78. end
  79. else if choose=="8" then
  80. if z8==8 then
  81. z8="X"
  82. turnover=1
  83. else
  84. end
  85. else if choose=="9" then
  86. if z9==9 then
  87. z9="X"
  88. turnover=1
  89. else
  90. end
  91. else
  92. end
  93. end
  94. end
  95. end
  96. end
  97. end
  98. end
  99. end
  100. end
  101. until turnover==1
  102.  if z1=="X" and z2=="X" and z3=="X" then
  103. win=1
  104. winner=1
  105. key=1
  106. else if z4=="X" and z5=="X" and z6=="X" then
  107. win=1
  108. winner=1
  109. key=1
  110. else if z7=="X" and z8=="X" and z9=="X" then
  111. win=1
  112. winner=1
  113. key=1
  114. else if z1=="X" and z4=="X" and z7 == "X" then
  115. win=1
  116. winner=1
  117. key=1
  118. else if z2=="X" and z5=="X" and z8=="X" then
  119. win=1
  120. winner=1
  121. key=1
  122. else if z3=="X" and z6=="X" and z9=="X" then
  123. win=1
  124. winner=1
  125. key=1
  126. else if z1=="X" and z5=="X" and z9=="X" then
  127. win=1
  128. winner=1
  129. key=1
  130. else if z3=="X" and z5=="X" and z7=="X" then
  131. win=1
  132. winner=1
  133. key=1
  134. else
  135. end
  136. end
  137. end
  138. end
  139. end
  140. end
  141. end
  142. end
  143. --HERE STARTS BOB BOB IS A RLY SHY GUY SO DONT... just dont
  144. --IF BOB DONT WANT TO DEFEND HIS NUMBERS HE CHOOSE A RDM 1 IDC IF THIS IS GOOD OR NOT IF THIS WOULD BE COMMERCIAL I WOULD WRITE A BETTER AI BUT WHO CARES ;)
  145. if winner==0 then
  146. if z2=="O" and z3=="O" and z1==1 then
  147. z1="O"
  148. else if z5=="O" and z9=="O" and z1==1 then
  149. z1="O"
  150. else if z4=="O" and z7=="O" and z1==1 then
  151. z1="O"
  152. else if z1=="O" and z3=="O" and z2==2 then --z2 goes invulnerable
  153. z2="O"
  154. else if z5=="O" and z8=="O" and z2==2 then
  155. z2="O"
  156. else if z1=="O" and z2=="O" and z3==3 then --z3
  157. z3="O"
  158. else if z6=="O" and z9=="O" and z3==3 then
  159. z3="O"
  160. else if z5=="O" and z7=="O" and z3==3 then
  161. z3="O"
  162. else if z1=="O" and z7=="O" and z4==4 then --z4
  163. z4="O"
  164. else if z5=="O" and z6=="O" and z4==4 then
  165. z4="O"
  166. else if z1=="O" and z9=="O" and z5==5 then --z5
  167. z5="O"
  168. else if z2=="O" and z8=="O" and z5==5 then
  169. z5="O"
  170. else if z3=="O" and z7=="O" and z5==5 then
  171. z5="O"
  172. else if z6=="O" and z4=="O" and z5==5 then
  173. z5="O"
  174. else if z4=="O" and z5=="O" and z6==6 then --z6
  175. z6="O"
  176. else if z3=="O" and z9=="O" and z6==6 then
  177. z6="O"
  178. else if z1=="O" and z4=="O" and z7==7 then --z7
  179. z7="O"
  180. else if z3=="O" and z5=="O" and z7==7 then
  181. z7="O"
  182. else if z8=="O" and z9=="O" and z7==7 then
  183. z7="O"
  184. else if z2=="O" and z5=="O" and z8==8 then --z8
  185. z8="O"
  186. else if z7=="O" and z9=="O" and z8==8 then
  187. z8="O"
  188. else if z3=="O" and z6=="O" and z9==9 then --z9
  189. z9="O"
  190. else if z1=="O" and z5=="O" and z9==9 then
  191. z9="O"
  192. else if z7=="O" and z8=="O" and z9==9 then
  193. z9="O"
  194. else
  195. -- z1 goes invulnerable
  196. if z2=="X" and z3=="X" and z1==1 then
  197. z1="O"
  198. else if z5=="X" and z9=="X" and z1==1 then
  199. z1="O"
  200. else if z4=="X" and z7=="X" and z1==1 then
  201. z1="O"
  202. else if z1=="X" and z3=="X" and z2==2 then --z2 goes invulnerable
  203. z2="O"
  204. else if z5=="X" and z8=="X" and z2==2 then
  205. z2="O"
  206. else if z1=="X" and z2=="X" and z3==3 then --z3
  207. z3="O"
  208. else if z6=="X" and z9=="X" and z3==3 then
  209. z3="O"
  210. else if z5=="X" and z7=="X" and z3==3 then
  211. z3="O"
  212. else if z1=="X" and z7=="X" and z4==4 then --z4
  213. z4="O"
  214. else if z5=="X" and z6=="X" and z4==4 then
  215. z4="O"
  216. else if z1=="X" and z9=="X" and z5==5 then --z5
  217. z5="O"
  218. else if z2=="X" and z8=="X" and z5==5 then
  219. z5="O"
  220. else if z3=="X" and z7=="X" and z5==5 then
  221. z5="O"
  222. else if z6=="X" and z4=="X" and z5==5 then
  223. z5="O"
  224. else if z4=="X" and z5=="X" and z6==6 then --z6
  225. z6="O"
  226. else if z3=="X" and z9=="X" and z6==6 then
  227. z6="O"
  228. else if z1=="X" and z4=="X" and z7==7 then --z7
  229. z7="O"
  230. else if z3=="X" and z5=="X" and z7==7 then
  231. z7="O"
  232. else if z8=="X" and z9=="X" and z7==7 then
  233. z7="O"
  234. else if z2=="X" and z5=="X" and z8==8 then --z8
  235. z8="O"
  236. else if z7=="X" and z9=="X" and z8==8 then
  237. z8="O"
  238. else if z3=="X" and z6=="X" and z9==9 then --z9
  239. z9="O"
  240. else if z1=="X" and z5=="X" and z9==9 then
  241. z9="O"
  242. else if z7=="X" and z8=="X" and z9==9 then
  243. z9="O"
  244. else                                        --if nothing is in danger i will choose a random value
  245. repeat
  246. if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  247. botchoose=1337
  248. else
  249. botchoose=math.random(9)
  250. if botchoose == 1 then
  251. if z1==1 then
  252. z1="O"
  253. botchoose=1337
  254. else
  255. end
  256. else if botchoose== 2 then
  257. if z2==2 then
  258. z2="O"
  259. botchoose=1337
  260. else
  261. end
  262. else if botchoose== 3 then
  263. if z3==3 then
  264. z3="O"
  265. botchoose=1337
  266. else
  267. end
  268. else if botchoose== 4 then
  269. if z4==4 then
  270. z4="O"
  271. botchoose=1337
  272. else
  273. end
  274. else if botchoose== 5 then
  275. if z5==5 then
  276. z5="O"
  277. botchoose=1337
  278. else
  279. end
  280. else if botchoose== 6 then
  281. if z6==6 then
  282. z6="O"
  283. botchoose=1337
  284. else
  285. end
  286. else if botchoose== 7 then
  287. if z7==7 then
  288. z7="O"
  289. botchoose=1337
  290. else
  291. end
  292. else if botchoose== 8 then
  293. if z8==8 then
  294. z8="O"
  295. botchoose=1337
  296. else
  297. end
  298. else if botchoose== 9 then
  299. if z9==9 then
  300. z9="O"
  301. botchoose=1337
  302. else
  303. end
  304. else
  305. end
  306. end
  307. end
  308. end
  309. end
  310. end
  311. end
  312. end
  313. end
  314. end
  315. until botchoose==1337
  316. end
  317. end
  318. end
  319. end
  320. end
  321. end
  322. end
  323. end
  324. end
  325. end
  326. end
  327. end
  328. end
  329. end
  330. end
  331. end
  332. end
  333. end
  334. end
  335. end
  336. end
  337. end
  338. end
  339. end
  340. end
  341. end
  342. end
  343. end
  344. end
  345. end
  346. end
  347. end
  348. end
  349. end
  350. end
  351. end
  352. end
  353. end
  354. end
  355. end
  356. end
  357. end
  358. end
  359. end
  360. end
  361. end
  362. end
  363. end
  364.  if z1=="O" and z2=="O" and z3=="O" then
  365.  bot=1
  366. win=1
  367. winner=2
  368. key=1
  369. else if z4=="O" and z5=="O" and z6=="O" then
  370. bot=1
  371. win=1
  372. winner=2
  373. key=1
  374. else if z7=="O" and z8=="O" and z9=="O" then
  375. bot=1
  376. win=1
  377. winner=2
  378. key=1
  379. else if z1=="O" and z4=="O" and z7 == "O" then
  380. bot=1
  381. win=1
  382. winner=2
  383. key=1
  384. else if z2=="O" and z5=="O" and z8=="O" then
  385. bot=1
  386. win=1
  387. winner=2
  388. key=1
  389. else if z3=="O" and z6=="O" and z9=="O" then
  390. bot=1
  391. win=1
  392. winner=2
  393. key=1
  394. else if z1=="O" and z5=="O" and z9=="O" then
  395. bot=1
  396. win=1
  397. winner=2
  398. key=1
  399. else if z3=="O" and z5=="O" and z7=="O" then
  400. bot=1
  401. win=1
  402. winner=2
  403. key=1
  404. else if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  405. win=1
  406. winner=3
  407. key=1
  408. else
  409. end
  410. end
  411. end
  412. end
  413. end
  414. end
  415. end
  416. end
  417. end
  418. else
  419. end
  420.  
  421. until win==1
  422. else if player=="2" then -----------------------------------------------------------------------------
  423. repeat
  424. repeat
  425. turnover=0
  426. shell.run("clear")
  427. print("Player1")
  428. print(z1," ",z2," ",z3)
  429. print()
  430. print(z4," ",z5," ",z6)
  431. print()
  432. print(z7," ",z8," ",z9)
  433. print()
  434. write("Choose: ")
  435. local choose=read()
  436. if choose=="1" then
  437. if z1==1 then
  438. z1 = "X"
  439. turnover=1
  440. else
  441. end
  442. else if choose=="2" then
  443. if z2==2 then
  444. z2="X"
  445. turnover=1
  446. else
  447. end
  448. else if choose=="3" then
  449. if z3==3 then
  450. z3="X"
  451. turnover=1
  452. else
  453. end
  454. else if choose=="4" then
  455. if z4==4 then
  456. z4="X"
  457. turnover=1
  458. else
  459. end
  460. else if choose=="5" then
  461. if z5==5 then
  462. z5="X"
  463. turnover=1
  464. else
  465. end
  466. else if choose=="6" then
  467. if z6==6 then
  468. z6="X"
  469. turnover=1
  470. else
  471. end
  472. else if choose=="7" then
  473. if z7==7 then
  474. z7="X"
  475. turnover=1
  476. else
  477. end
  478. else if choose=="8" then
  479. if z8==8 then
  480. z8="X"
  481. turnover=1
  482. else
  483. end
  484. else if choose=="9" then
  485. if z9==9 then
  486. z9="X"
  487. turnover=1
  488. else
  489. end
  490. else
  491. end
  492. end
  493. end
  494. end
  495. end
  496. end
  497. end
  498. end
  499. end
  500. until turnover==1
  501.  if z1=="X" and z2=="X" and z3=="X" then
  502. win=1
  503. winner=1
  504. key=1
  505. else if z4=="X" and z5=="X" and z6=="X" then
  506. win=1
  507. winner=1
  508. key=1
  509. else if z7=="X" and z8=="X" and z9=="X" then
  510. win=1
  511. winner=1
  512. key=1
  513. else if z1=="X" and z4=="X" and z7 == "X" then
  514. win=1
  515. winner=1
  516. key=1
  517. else if z2=="X" and z5=="X" and z8=="X" then
  518. win=1
  519. winner=1
  520. key=1
  521. else if z3=="X" and z6=="X" and z9=="X" then
  522. win=1
  523. winner=1
  524. key=1
  525. else if z1=="X" and z5=="X" and z9=="X" then
  526. win=1
  527. winner=1
  528. key=1
  529. else if z3=="X" and z5=="X" and z7=="X" then
  530. win=1
  531. winner=1
  532. key=1
  533. else if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  534. winner=3
  535. win=1
  536. key=1
  537. else
  538. end
  539. end
  540. end
  541. end
  542. end
  543. end
  544. end
  545. end
  546. end
  547. if winner==0 then
  548. repeat
  549. turnover=0
  550. shell.run("clear")
  551. print("Player2")
  552. print(z1," ",z2," ",z3)
  553. print()
  554. print(z4," ",z5," ",z6)
  555. print()
  556. print(z7," ",z8," ",z9)
  557. print()
  558. write("Choose: ")
  559. local choose=read()
  560. if choose=="1" then
  561. if z1==1 then
  562. z1 ="O"
  563. turnover=1
  564. else
  565. end
  566. else if choose=="2" then
  567. if z2==2 then
  568. z2="O"
  569. turnover=1
  570. else
  571. end
  572. else if choose=="3" then
  573. if z3==3 then
  574. z3="O"
  575. turnover=1
  576. else
  577. end
  578. else if choose=="4" then
  579. if z4==4 then
  580. z4="O"
  581. turnover=1
  582. else
  583. end
  584. else if choose=="5" then
  585. if z5==5 then
  586. z5="O"
  587. turnover=1
  588. else
  589. end
  590. else if choose=="6" then
  591. if z6==6 then
  592. z6="O"
  593. turnover=1
  594. else
  595. end
  596. else if choose=="7" then
  597. if z7==7 then
  598. z7="O"
  599. turnover=1
  600. else
  601. end
  602. else if choose=="8" then
  603. if z8==8 then
  604. z8="O"
  605. turnover=1
  606. else
  607. end
  608. else if choose=="9" then
  609. if z9==9 then
  610. z9="O"
  611. turnover=1
  612. else
  613. end
  614. else
  615. end
  616. end
  617. end
  618. end
  619. end
  620. end
  621. end
  622. end
  623. end
  624. until turnover==1
  625.  if z1=="O" and z2=="O" and z3=="O" then
  626. win=1
  627. winner=2
  628. key=1
  629. else if z4=="O" and z5=="O" and z6=="O" then
  630. win=1
  631. winner=2
  632. key=1
  633. else if z7=="O" and z8=="O" and z9=="O" then
  634. win=1
  635. winner=2
  636. key=1
  637. else if z1=="O" and z4=="O" and z7 == "O" then
  638. win=1
  639. winner=2
  640. key=1
  641. else if z2=="O" and z5=="O" and z8=="O" then
  642. win=1
  643. winner=2
  644. key=1
  645. else if z3=="O" and z6=="O" and z9=="O" then
  646. win=1
  647. winner=2
  648. key=1
  649. else if z1=="O" and z5=="O" and z9=="O" then
  650. win=1
  651. winner=2
  652. key=1
  653. else if z3=="O" and z5=="O" and z7=="O" then
  654. win=1
  655. winner=2
  656. key=1
  657. else if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  658. winner=3
  659. win=1
  660. key=1
  661. else
  662. end
  663. end
  664. end
  665. end
  666. end
  667. end
  668. end
  669. end
  670. end
  671. else
  672. end
  673. until win==1
  674. else if player=="0" then ------------------------------------------------------------------------
  675. local warte=2
  676. local w8=0.1
  677. local botchoose=0
  678. local p1w=0
  679. local p2w=0
  680. local p1l=0
  681. local p2l=0
  682. local ties=0
  683. local firstmov=1
  684. --create a bet mode and store it externaly e.g. not in this "main func"
  685. print("LOADING...")
  686. repeat
  687. if warte ~= 0 then
  688. if warte == 1 then
  689. w8=0.01
  690. else if warte == 0.5 then
  691. w8=0.001
  692. else
  693. end
  694. end
  695. sleep(warte)
  696. warte=warte-w8
  697. else
  698. end
  699. shell.run("clear")
  700. print("STEVE:    Wins: ",p1w," Lost: ",p1l," Ties: ",ties)
  701. print("BOB:      Wins: ",p2w," Lost: ",p2l," Ties: ",ties)
  702. print("STEVE")
  703. print()
  704. print(z1," ",z2," ",z3)
  705. print()
  706. print(z4," ",z5," ",z6)
  707. print()
  708. print(z7," ",z8," ",z9)
  709. print()
  710. -- z1 goes invulnerable
  711. if firstmov==0 then
  712. if z2=="X" and z3=="X" and z1==1 then
  713. z1="X"
  714. else if z5=="X" and z9=="X" and z1==1 then
  715. z1="X"
  716. else if z4=="X" and z7=="X" and z1==1 then
  717. z1="X"
  718. else if z1=="X" and z3=="X" and z2==2 then --z2 goes invulnerable
  719. z2="X"
  720. else if z5=="X" and z8=="X" and z2==2 then
  721. z2="X"
  722. else if z1=="X" and z2=="X" and z3==3 then --z3
  723. z3="X"
  724. else if z6=="X" and z9=="X" and z3==3 then
  725. z3="X"
  726. else if z5=="X" and z7=="X" and z3==3 then
  727. z3="X"
  728. else if z1=="X" and z7=="X" and z4==4 then --z4
  729. z4="X"
  730. else if z5=="X" and z6=="X" and z4==4 then
  731. z4="X"
  732. else if z1=="X" and z9=="X" and z5==5 then --z5
  733. z5="X"
  734. else if z2=="X" and z8=="X" and z5==5 then
  735. z5="X"
  736. else if z3=="X" and z7=="X" and z5==5 then
  737. z5="X"
  738. else if z6=="X" and z4=="X" and z5==5 then
  739. z5="X"
  740. else if z4=="X" and z5=="X" and z6==6 then --z6
  741. z6="X"
  742. else if z3=="X" and z9=="X" and z6==6 then
  743. z6="X"
  744. else if z1=="X" and z4=="X" and z7==7 then --z7
  745. z7="X"
  746. else if z3=="X" and z5=="X" and z7==7 then
  747. z7="X"
  748. else if z8=="X" and z9=="X" and z7==7 then
  749. z7="X"
  750. else if z2=="X" and z5=="X" and z8==8 then --z8
  751. z8="X"
  752. else if z7=="X" and z9=="X" and z8==8 then
  753. z8="X"
  754. else if z3=="X" and z6=="X" and z9==9 then --z9
  755. z9="X"
  756. else if z1=="X" and z5=="X" and z9==9 then
  757. z9="X"
  758. else if z7=="X" and z8=="X" and z9==9 then
  759. z9="X"
  760. else                                        --if nothing is in danger i will choose a random value
  761. if z2=="O" and z3=="O" and z1==1 then
  762. z1="X"
  763. else if z5=="O" and z9=="O" and z1==1 then
  764. z1="X"
  765. else if z4=="O" and z7=="O" and z1==1 then
  766. z1="X"
  767. else if z1=="O" and z3=="O" and z2==2 then --z2 goes invulnerable
  768. z2="X"
  769. else if z5=="O" and z8=="O" and z2==2 then
  770. z2="X"
  771. else if z1=="O" and z2=="O" and z3==3 then --z3
  772. z3="X"
  773. else if z6=="O" and z9=="O" and z3==3 then
  774. z3="X"
  775. else if z5=="O" and z7=="O" and z3==3 then
  776. z3="X"
  777. else if z1=="O" and z7=="O" and z4==4 then --z4
  778. z4="X"
  779. else if z5=="O" and z6=="O" and z4==4 then
  780. z4="X"
  781. else if z1=="O" and z9=="O" and z5==5 then --z5
  782. z5="X"
  783. else if z2=="O" and z8=="O" and z5==5 then
  784. z5="X"
  785. else if z3=="O" and z7=="O" and z5==5 then
  786. z5="X"
  787. else if z6=="O" and z4=="O" and z5==5 then
  788. z5="X"
  789. else if z4=="O" and z5=="O" and z6==6 then --z6
  790. z6="X"
  791. else if z3=="O" and z9=="O" and z6==6 then
  792. z6="X"
  793. else if z1=="O" and z4=="O" and z7==7 then --z7
  794. z7="X"
  795. else if z3=="O" and z5=="O" and z7==7 then
  796. z7="X"
  797. else if z8=="O" and z9=="O" and z7==7 then
  798. z7="X"
  799. else if z2=="O" and z5=="O" and z8==8 then --z8
  800. z8="X"
  801. else if z7=="O" and z9=="O" and z8==8 then
  802. z8="X"
  803. else if z3=="O" and z6=="O" and z9==9 then --z9
  804. z9="X"
  805. else if z1=="O" and z5=="O" and z9==9 then
  806. z9="X"
  807. else if z7=="O" and z8=="O" and z9==9 then
  808. z9="X"
  809. else
  810. repeat
  811. if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  812. botchoose=1337
  813. else
  814. botchoose=math.random(9)
  815. if botchoose == 1 then
  816. if z1==1 then
  817. z1="X"
  818. botchoose=1337
  819. else
  820. end
  821. else if botchoose== 2 then
  822. if z2==2 then
  823. z2="X"
  824. botchoose=1337
  825. else
  826. end
  827. else if botchoose== 3 then
  828. if z3==3 then
  829. z3="X"
  830. botchoose=1337
  831. else
  832. end
  833. else if botchoose== 4 then
  834. if z4==4 then
  835. z4="X"
  836. botchoose=1337
  837. else
  838. end
  839. else if botchoose== 5 then
  840. if z5==5 then
  841. z5="X"
  842. botchoose=1337
  843. else
  844. end
  845. else if botchoose== 6 then
  846. if z6==6 then
  847. z6="X"
  848. botchoose=1337
  849. else
  850. end
  851. else if botchoose== 7 then
  852. if z7==7 then
  853. z7="X"
  854. botchoose=1337
  855. else
  856. end
  857. else if botchoose== 8 then
  858. if z8==8 then
  859. z8="X"
  860. botchoose=1337
  861. else
  862. end
  863. else if botchoose== 9 then
  864. if z9==9 then
  865. z9="X"
  866. botchoose=1337
  867. else
  868. end
  869. else
  870. end
  871. end
  872. end
  873. end
  874. end
  875. end
  876. end
  877. end
  878. end
  879. end
  880. until botchoose==1337
  881. end
  882. end
  883. end
  884. end
  885. end
  886. end
  887. end
  888. end
  889. end
  890. end
  891. end
  892. end
  893. end
  894. end
  895. end
  896. end
  897. end
  898. end
  899. end
  900. end
  901. end
  902. end
  903. end
  904. end
  905. end
  906. end
  907. end
  908. end
  909. end
  910. end
  911. end
  912. end
  913. end
  914. end
  915. end
  916. end
  917. end
  918. end
  919. end
  920. end
  921. end
  922. end
  923. end
  924. end
  925. end
  926. end
  927. end
  928. end
  929. else
  930. z5="X"
  931. firstmov=0
  932. end
  933.  if z1=="X" and z2=="X" and z3=="X" then
  934.  bot=1
  935. win=1
  936. winner=2
  937. key=1
  938. else if z4=="X" and z5=="X" and z6=="X" then
  939. bot=1
  940. win=1
  941. winner=2
  942. key=1
  943. else if z7=="X" and z8=="X" and z9=="X" then
  944. bot=1
  945. win=1
  946. winner=2
  947. key=1
  948. else if z1=="X" and z4=="X" and z7 == "X" then
  949. bot=1
  950. win=1
  951. winner=2
  952. key=1
  953. else if z2=="X" and z5=="X" and z8=="X" then
  954. bot=1
  955. win=1
  956. winner=2
  957. key=1
  958. else if z3=="X" and z6=="X" and z9=="X" then
  959. bot=1
  960. win=1
  961. winner=2
  962. key=1
  963. else if z1=="X" and z5=="X" and z9=="X" then
  964. bot=1
  965. win=1
  966. winner=2
  967. key=1
  968. else if z3=="X" and z5=="X" and z7=="X" then
  969. bot=1
  970. win=1
  971. winner=2
  972. key=1
  973. else if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  974. win=1
  975. winner=3
  976. key=1
  977. else
  978. end
  979. end
  980. end
  981. end
  982. end
  983. end
  984. end
  985. end
  986. end
  987. if warte ~= 0 then
  988. if warte == 1 then
  989. w8=0.01
  990. else if warte == 0.5 then
  991. w8=0.001
  992. else
  993. end
  994. end
  995. sleep(warte)
  996. warte=warte-w8
  997. else
  998. end
  999. shell.run("clear")
  1000. print("STEVE:    Wins: ",p1w," Lost: ",p1l," Ties: ",ties)
  1001. print("BOB:      Wins: ",p2w," Lost: ",p2l," Ties: ",ties)
  1002. print("BOB")
  1003. print()
  1004. print(z1," ",z2," ",z3)
  1005. print()
  1006. print(z4," ",z5," ",z6)
  1007. print()
  1008. print(z7," ",z8," ",z9)
  1009. print()
  1010.  
  1011. --INTERFASFAFVEF
  1012.  
  1013.  
  1014.  
  1015.  
  1016. if winner==0 then
  1017. if z2=="O" and z3=="O" and z1==1 then
  1018. z1="O"
  1019. else if z5=="O" and z9=="O" and z1==1 then
  1020. z1="O"
  1021. else if z4=="O" and z7=="O" and z1==1 then
  1022. z1="O"
  1023. else if z1=="O" and z3=="O" and z2==2 then --z2 goes invulnerable
  1024. z2="O"
  1025. else if z5=="O" and z8=="O" and z2==2 then
  1026. z2="O"
  1027. else if z1=="O" and z2=="O" and z3==3 then --z3
  1028. z3="O"
  1029. else if z6=="O" and z9=="O" and z3==3 then
  1030. z3="O"
  1031. else if z5=="O" and z7=="O" and z3==3 then
  1032. z3="O"
  1033. else if z1=="O" and z7=="O" and z4==4 then --z4
  1034. z4="O"
  1035. else if z5=="O" and z6=="O" and z4==4 then
  1036. z4="O"
  1037. else if z1=="O" and z9=="O" and z5==5 then --z5
  1038. z5="O"
  1039. else if z2=="O" and z8=="O" and z5==5 then
  1040. z5="O"
  1041. else if z3=="O" and z7=="O" and z5==5 then
  1042. z5="O"
  1043. else if z6=="O" and z4=="O" and z5==5 then
  1044. z5="O"
  1045. else if z4=="O" and z5=="O" and z6==6 then --z6
  1046. z6="O"
  1047. else if z3=="O" and z9=="O" and z6==6 then
  1048. z6="O"
  1049. else if z1=="O" and z4=="O" and z7==7 then --z7
  1050. z7="O"
  1051. else if z3=="O" and z5=="O" and z7==7 then
  1052. z7="O"
  1053. else if z8=="O" and z9=="O" and z7==7 then
  1054. z7="O"
  1055. else if z2=="O" and z5=="O" and z8==8 then --z8
  1056. z8="O"
  1057. else if z7=="O" and z9=="O" and z8==8 then
  1058. z8="O"
  1059. else if z3=="O" and z6=="O" and z9==9 then --z9
  1060. z9="O"
  1061. else if z1=="O" and z5=="O" and z9==9 then
  1062. z9="O"
  1063. else if z7=="O" and z8=="O" and z9==9 then
  1064. z9="O"
  1065. else
  1066. -- z1 goes invulnerable
  1067. if z2=="X" and z3=="X" and z1==1 then
  1068. z1="O"
  1069. else if z5=="X" and z9=="X" and z1==1 then
  1070. z1="O"
  1071. else if z4=="X" and z7=="X" and z1==1 then
  1072. z1="O"
  1073. else if z1=="X" and z3=="X" and z2==2 then --z2 goes invulnerable
  1074. z2="O"
  1075. else if z5=="X" and z8=="X" and z2==2 then
  1076. z2="O"
  1077. else if z1=="X" and z2=="X" and z3==3 then --z3
  1078. z3="O"
  1079. else if z6=="X" and z9=="X" and z3==3 then
  1080. z3="O"
  1081. else if z5=="X" and z7=="X" and z3==3 then
  1082. z3="O"
  1083. else if z1=="X" and z7=="X" and z4==4 then --z4
  1084. z4="O"
  1085. else if z5=="X" and z6=="X" and z4==4 then
  1086. z4="O"
  1087. else if z1=="X" and z9=="X" and z5==5 then --z5
  1088. z5="O"
  1089. else if z2=="X" and z8=="X" and z5==5 then
  1090. z5="O"
  1091. else if z3=="X" and z7=="X" and z5==5 then
  1092. z5="O"
  1093. else if z6=="X" and z4=="X" and z5==5 then
  1094. z5="O"
  1095. else if z4=="X" and z5=="X" and z6==6 then --z6
  1096. z6="O"
  1097. else if z3=="X" and z9=="X" and z6==6 then
  1098. z6="O"
  1099. else if z1=="X" and z4=="X" and z7==7 then --z7
  1100. z7="O"
  1101. else if z3=="X" and z5=="X" and z7==7 then
  1102. z7="O"
  1103. else if z8=="X" and z9=="X" and z7==7 then
  1104. z7="O"
  1105. else if z2=="X" and z5=="X" and z8==8 then --z8
  1106. z8="O"
  1107. else if z7=="X" and z9=="X" and z8==8 then
  1108. z8="O"
  1109. else if z3=="X" and z6=="X" and z9==9 then --z9
  1110. z9="O"
  1111. else if z1=="X" and z5=="X" and z9==9 then
  1112. z9="O"
  1113. else if z7=="X" and z8=="X" and z9==9 then
  1114. z9="O"
  1115. else                                        --if nothing is in danger i will choose a random value
  1116. repeat
  1117. if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  1118. botchoose=1337
  1119. else
  1120. botchoose=math.random(9)
  1121. if botchoose == 1 then
  1122. if z1==1 then
  1123. z1="O"
  1124. botchoose=1337
  1125. else
  1126. end
  1127. else if botchoose== 2 then
  1128. if z2==2 then
  1129. z2="O"
  1130. botchoose=1337
  1131. else
  1132. end
  1133. else if botchoose== 3 then
  1134. if z3==3 then
  1135. z3="O"
  1136. botchoose=1337
  1137. else
  1138. end
  1139. else if botchoose== 4 then
  1140. if z4==4 then
  1141. z4="O"
  1142. botchoose=1337
  1143. else
  1144. end
  1145. else if botchoose== 5 then
  1146. if z5==5 then
  1147. z5="O"
  1148. botchoose=1337
  1149. else
  1150. end
  1151. else if botchoose== 6 then
  1152. if z6==6 then
  1153. z6="O"
  1154. botchoose=1337
  1155. else
  1156. end
  1157. else if botchoose== 7 then
  1158. if z7==7 then
  1159. z7="O"
  1160. botchoose=1337
  1161. else
  1162. end
  1163. else if botchoose== 8 then
  1164. if z8==8 then
  1165. z8="O"
  1166. botchoose=1337
  1167. else
  1168. end
  1169. else if botchoose== 9 then
  1170. if z9==9 then
  1171. z9="O"
  1172. botchoose=1337
  1173. else
  1174. end
  1175. else
  1176. end
  1177. end
  1178. end
  1179. end
  1180. end
  1181. end
  1182. end
  1183. end
  1184. end
  1185. end
  1186. until botchoose==1337
  1187. end
  1188. end
  1189. end
  1190. end
  1191. end
  1192. end
  1193. end
  1194. end
  1195. end
  1196. end
  1197. end
  1198. end
  1199. end
  1200. end
  1201. end
  1202. end
  1203. end
  1204. end
  1205. end
  1206. end
  1207. end
  1208. end
  1209. end
  1210. end
  1211. end
  1212. end
  1213. end
  1214. end
  1215. end
  1216. end
  1217. end
  1218. end
  1219. end
  1220. end
  1221. end
  1222. end
  1223. end
  1224. end
  1225. end
  1226. end
  1227. end
  1228. end
  1229. end
  1230. end
  1231. end
  1232. end
  1233. end
  1234. end
  1235.  if z1=="O" and z2=="O" and z3=="O" then
  1236.  bot=1
  1237. win=1
  1238. winner=2
  1239. key=1
  1240. else if z4=="O" and z5=="O" and z6=="O" then
  1241. bot=1
  1242. win=1
  1243. winner=2
  1244. key=1
  1245. else if z7=="O" and z8=="O" and z9=="O" then
  1246. bot=1
  1247. win=1
  1248. winner=2
  1249. key=1
  1250. else if z1=="O" and z4=="O" and z7 == "O" then
  1251. bot=1
  1252. win=1
  1253. winner=2
  1254. key=1
  1255. else if z2=="O" and z5=="O" and z8=="O" then
  1256. bot=1
  1257. win=1
  1258. winner=2
  1259. key=1
  1260. else if z3=="O" and z6=="O" and z9=="O" then
  1261. bot=1
  1262. win=1
  1263. winner=2
  1264. key=1
  1265. else if z1=="O" and z5=="O" and z9=="O" then
  1266. bot=1
  1267. win=1
  1268. winner=2
  1269. key=1
  1270. else if z3=="O" and z5=="O" and z7=="O" then
  1271. bot=1
  1272. win=1
  1273. winner=2
  1274. key=1
  1275. else if z1~=1 and z2~=2 and z3~=3 and z4~=4 and z5~=5 and z6~=6 and z7~=7 and z8~=8 and z9~=9 then
  1276. win=1
  1277. winner=3
  1278. key=1
  1279. else
  1280. end
  1281. end
  1282. end
  1283. end
  1284. end
  1285. end
  1286. end
  1287. end
  1288. end
  1289. else
  1290. end
  1291.  
  1292. if win==1 then
  1293. if winner==1 then
  1294. p1w=p1w+1
  1295. else if winner==2 then
  1296. p2w=p2w+1
  1297. else
  1298. ties=ties+1
  1299. end
  1300. end
  1301. key=0
  1302. z1=1
  1303. z2=2
  1304. z3=3
  1305. z4=4
  1306. z5=5
  1307. z6=6
  1308. z7=7
  1309. z8=8
  1310. z9=9
  1311. win=0
  1312. winner=0
  1313. end
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328.  
  1329.  
  1330.  
  1331. until botchoose==10
  1332. else
  1333. shell.run("clear") --same here
  1334. print("SKIPP3Rs TIC TAC TODESFALLE v1.0r0")
  1335. print()
  1336. print("Just 1 or 2 users allowed ;)")
  1337. print()
  1338. end
  1339. end
  1340. end
  1341. until key==1
  1342. print()
  1343. if winner==1 then
  1344. print("Player 1 Won!")
  1345. else if winner==2 then
  1346. if bot==1 then
  1347. print("U Lost... whatta shame")
  1348. else
  1349. print("Player 2 Won!")
  1350. end
  1351. else if winner==3 then
  1352. print("what a pity ... a tie")
  1353. else
  1354. end
  1355. end
  1356. end
  1357. write("PRESS ENTER TO CONTINUE")
  1358. local nonsense=read()
Advertisement
Add Comment
Please, Sign In to add comment