Sanguin

Lua Tic Tac Toe

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