User Tools

Site Tools


gamescopycat

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

gamescopycat [2016/01/01 22:36]
127.0.0.1 external edit
gamescopycat [2020/02/28 10:46]
Line 1: Line 1:
-|{{gamescopycat.png}}|Repeat after the computer.  Longer and longer patterns of lights and sounds will test your short term memory.  Choose more color slices to make the game more difficult.| 
-<code> 
-#CopyCat - A follow along memory game 
-# 2013-01-07 j.m.reneau 
-# requires BASIC256 0.9.9.25 or later 
  
-pies = 5 
-dim lightcolors(1) 
-lightcolors = {red, blue, green, yellow, purple, cyan, orange} 
-dim darkcolors(1) 
-darkcolors = {darkred, darkblue, darkgreen, darkyellow, darkpurple, darkcyan, darkorange} 
-global pies, lightcolors, darkcolors 
- 
-fastgraphics 
-dim game(100) 
- 
-print "CopyCat" 
-print "See how long of a pattern you can remember.  Click on the correct pie wedge when it is your turn." 
- 
-do 
-   input "How many pie slices (3-7)?", pies 
-until pies >=3 and pies <= 7 
- 
-# generate the game 
-for t = 0 to game[?]-1 
-   game[t] = int(rand*pies) 
-next t 
- 
-round = 0 
-gameon = true 
-while gameon 
-   # show the pattern 
-   round++ 
-   print "Round " + round 
-   for t = 0 to round -1 
-      call showslice(100,300,game[t]) 
-   next t 
-   # 
-   # get the user to give it back 
-   print "  Play it back." 
-   for t = 0 to round -1 
-      g = getclick(3000,game[t]) 
-      if g = -1 then 
-         # made a mistake - die 
-         gameon = false 
-         t = round 
-      end if 
-   next t 
-end while 
-print "You completed " + round + " rounds." 
-end 
- 
-subroutine showslice(waittime, soundtime, slice) 
-   pause waittime/1000 
-   call drawgame(slice) 
-   call playsound(slice, soundtime) 
-   call drawgame(-1) 
-end subroutine 
- 
-function getclick(timeout, slicetoclick) 
-   # get the click before the timeout 
-   start = msec 
-   while msec<start+timeout and mouseb = 0 
-      pause .01 
-   end while 
-   if msec>=start+timeout then 
-      call drawgame(slicetoclick) 
-      call playdie() 
-      return -1 
-   else 
-      slice = -1 
-      for t = 0 to pies-1 
-         if pixel(mousex, mousey) = darkcolors[t] then slice = t 
-      next t 
-      if slice <> slicetoclick then 
-         call drawgame(slicetoclick) 
-         call playdie() 
-         return -1 
-      else 
-         call drawgame(slice) 
-         call playsound(slice, 250) 
-         while mouseb <> 0 
-            pause .01 
-         end while 
-         call drawgame(-1) 
-         return slice 
-      end if 
-   end if 
-end function 
- 
-subroutine playdie() 
-   sound 100,500 
-   say "you loose." 
-end subroutine 
- 
-subroutine playsound(s, d) 
-   sound 200+s*50,d 
-end subroutine 
- 
-subroutine drawgame(sliceon) 
-   # set slice number by passing its number (-1) nothing is on 
-   clg 
-   penwidth 1 
-   w = 2*pi/pies 
-   for t = 0 to pies-1 
-      if t = sliceon then 
-         color black,lightcolors[t] 
-      else 
-         color black,darkcolors[t] 
-      end if 
-      pie 0,0,300,300,t*w,w 
-   next t 
-   refresh 
-end subroutine 
-</code> 
gamescopycat.txt ยท Last modified: 2020/02/28 10:46 (external edit)