Advertisement
Guest User

Untitled

a guest
Mar 25th, 2014
674
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. DEFINT A-Z
  2. RANDOMIZE TIMER
  3. DIM grid(1 TO 4, 1 TO 4)
  4. DO
  5. CLS
  6. placed = 0
  7. DO
  8. x = INT(RND(1) * 4) + 1
  9. y = INT(RND(1) * 4) + 1
  10. IF grid(x, y) = 0 THEN grid(x, y) = 2 + 2 * INT(RND(1) * 2): placed = 1
  11. LOOP UNTIL placed = 1
  12. lose = -1: win = 0
  13. FOR i = 1 TO 4
  14. PRINT "+-----+-----+-----+-----+"
  15. PRINT "|";
  16. FOR j = 1 TO 4
  17. IF grid(i, j) = 2048 THEN win = -1: lose = 0
  18. IF grid(i, j) = 0 THEN lose = 0: PRINT " |"; ELSE COLOR 0, LOG(grid(i, j)) / LOG(2): PRINT USING "#####"; grid(i, j); : COLOR 7, 0: PRINT "|";
  19. NEXT
  20. PRINT
  21. NEXT
  22. PRINT "+-----+-----+-----+-----+"
  23. IF win THEN PRINT "You Win!!!": END
  24. IF lose THEN PRINT "You Lose!": END
  25. x$ = "": WHILE x$ = "": x$ = INKEY$: WEND
  26. SELECT CASE x$
  27. CASE CHR$(27)
  28. END
  29. CASE CHR$(0) + CHR$(72)' up
  30. FOR i = 3 TO 1 STEP -1
  31. FOR j = 1 TO 4
  32. IF grid(i, j) = 0 THEN grid(i, j) = grid(i + 1, j): grid(i + 1, j) = 0
  33. IF grid(i, j) = grid(i + 1, j) THEN grid(i, j) = grid(i, j) * 2: grid(i + 1, j) = 0
  34. NEXT
  35. NEXT
  36. CASE CHR$(0) + CHR$(75) 'left
  37. FOR i = 1 TO 4
  38. FOR j = 3 TO 1 STEP -1
  39. IF grid(i, j) = 0 THEN grid(i, j) = grid(i, j + 1): grid(i, j + 1) = 0
  40. IF grid(i, j) = grid(i, j + 1) THEN grid(i, j) = grid(i, j) * 2: grid(i, j + 1) = 0
  41. NEXT
  42. NEXT
  43. CASE CHR$(0) + CHR$(77)' right-
  44. FOR i = 1 TO 4
  45. FOR j = 2 TO 4
  46. IF grid(i, j) = 0 THEN grid(i, j) = grid(i, j - 1): grid(i, j - 1) = 0
  47. IF grid(i, j) = grid(i, j - 1) THEN grid(i, j) = grid(i, j) * 2: grid(i, j - 1) = 0
  48. NEXT
  49. NEXT
  50. CASE CHR$(0) + CHR$(79) ' down
  51. FOR i = 2 TO 4
  52. FOR j = 1 TO 4
  53. IF grid(i, j) = 0 THEN grid(i, j) = grid(i - 1, j): grid(i - 1, j) = 0
  54. IF grid(i, j) = grid(i - 1, j) THEN grid(i, j) = grid(i, j) * 2: grid(i - 1, j) = 0
  55. NEXT
  56. NEXT
  57. END SELECT
  58.  
  59.  
  60. LOOP
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement