- ÖÖÖ±>Sï}WÿÍupwpwwwppwpwwpwpwpwwwwwpwpwpwwwpwwwpwwwpwwwwwwwpwpwpwwpwwpwwpwwwpppppwpppwpppppwppwpppppwwwwwpwwwwwppppwpppwpppppwppwpppppwpwpwwwwwwwpwpwpwpwwpwwppwwpwwpwpwwwppppwwpwwppwpwwppwwpwpwpwppwpwpwwwwwpwpwwwpwpwwwpwwwpwwwpwwwwwwwpwwwppwwwpppwwwwwwpwpwwwpppppwpppwpppppwppwppppwwwppwpppwwpwwwwwwpwwwppppwpppwpppppwppwppppwpwpwppwwwppwpwwwpwpwwpwpwpwwpwwppwwpwwpwpwwwppwpwwwpwpwwppwwppwpwwpwwwwpwpwwpppwppwwwwpwpwpwwwpwpwwwwwpwpwpwwwwwpwpwwwwwwpwpwwpwppppppppwwpwwwpppppwpwwpwwwwwpwpwwwwwpwwpwwwwppppppwpwwwwwppppwpwwwwwwwwpwpwwpwwwwpwpwwppwpwwpwpwpwpwwppwwwwpwpwpwwwpwpwwpwpw "À "ÌÌ "ÌÌ "ÌÌ ÌÌ "ÀÌ" Ì " À " À " À "À " ÌÀ "À "ÀÌ"ÀÌ"Ì ÀÌ"Ì pwwwwwwwwwwwwwwwwwww"À "Ì"Ì" À Ì"Ì p "ÌÌ "ÌÌ "ÌÌ "ÀÌ""ÌÌ "ÀÌppppppppp""DDUUffUUpww""""DDDDUUUUffffUUUUpwwww """""@DDDDDPUUUUU`fffffPUUUUUppwwwww""""""DDDDDDUUUUUUffffffUUUUUUpwwwwww""""""DDDDDDUUUUUUffffffUUUUUUpwwww """""""@DDDDDDDPUUUUUUU`fffffffPUUUUUUUppwwwpww """""""@DDDDDDDPUUUUUUU`fffffffPUUUUUUUppwwwpww """""""@DDDDDDDPUUUUUUU`fffffffPUUUUUUUppwwpwww """""""@DDDDDDDPUUUUUUU`fffffffPUUUUUUUppwwwpwww """""""@DDDDDDDPUUUUUUU`fffffffPUUUUUUUppwwwpwww""""""DDDDDDUUUUUUffffffUUUUUUpwwwwww""""""DDDDDDUUUUUUffffffUUUUUUpwwwpww """""@DDDDDPUUUUU`fffffPUUUUUppwwwww""""DDDDUUUUffffUUUUpwwww""DDUUffUUpwwp""UUffDDpww""""UUUUffffDDDDpwwww """""PUUUUU`fffff@DDDDDppwwwww""""""UUUUUUffffffDDDDDDpwwwwww""""""UUUUUUffffffDDDDDDpwwww """""""PUUUUUUU`fffffff@DDDDDDDppwwwpww """""""PUUUUUUU`fffffff@DDDDDDDppwwwpww """""""PUUUUUUU`fffffff@DDDDDDDppwwpwww """""""PUUUUUUU`fffffff@DDDDDDDppwwwpwww """""""PUUUUUUU`fffffff@DDDDDDDppwwwpwww""""""UUUUUUffffffDDDDDDpwwwwww""""""UUUUUUffffffDDDDDDpwwwpww """""PUUUUU`fffff@DDDDDppwwwww""""UUUUffffDDDDpwwww""UUffDDpwwp33DDffffUUffpww3333DDDDffffffffUUUUffffpwwww033333@DDDDD`fffff`fffffPUUUUU`fffffppwwwww333333DDDDDDffffffffffffUUUUUUffffffpwwwwww333333DDDDDDffffffffffffUUUUUUffffffpwwww03333333@DDDDDDD`fffffff`fffffffPUUUUUUU`fffffffppwwwpww03333333@DDDDDDD`fffffff`fffffffPUUUUUUU`fffffffppwwwpww03333333@DDDDDDD`fffffff`fffffffPUUUUUUU`fffffffppwwpwww03333333@DDDDDDD`fffffff`fffffffPUUUUUUU`fffffffppwwwpwww03333333@DDDDDDD`fffffff`fffffffPUUUUUUU`fffffffppwwwpwww333333DDDDDDffffffffffffUUUUUUffffffpwwwwww333333DDDDDDffffffffffffUUUUUUffffffpwwwpww033333@DDDDD`fffff`fffffPUUUUU`fffffppwwwww3333DDDDffffffffUUUUffffpwwww33DDffffUUffpwwîîp3333DDDDîwwçpww33333333DDDDDDDDàwwwwçpwwww033333033333@DDDDD@DDDDD~wwwwwppwwwww333333333333DDDDDDDDDDDDàwwwwwwçpwwwwww333333333333DDDDDDDDDDDDàwwwwwwçpwwww0333333303333333@DDDDDDD@DDDDDDD~wwwwwwwppwwwpww0333333303333333@DDDDDDD@DDDDDDD~wwwwwwwppwwwpww0333333303333333@DDDDDDD@DDDDDDD~wwwwwwwppwwpwww0333333303333333@DDDDDDD@DDDDDDD~wwwwwwwppwwwpwww0333333303333333@DDDDDDD@DDDDDDD~wwwwwwwppwwwpwww333333333333DDDDDDDDDDDDàwwwwwwçpwwwwww333333333333DDDDDDDDDDDDàwwwwwwçpwwwpww033333033333@DDDDD@DDDDD~wwwwwppwwwww33333333DDDDDDDDàwwwwçpwwww3333DDDDîwwçpwwîîppppppwwwpwppppwwpwwwpwwpwwwpppppppwpppwwpwwpppppppwppwwpwwppwwwwwwwwwwwwwwwwwwwwwpwwpwwpwppwwwpwwpwpwwpwppwwwpwwwpwpwpwpwwwpwpwwwpwwwpwpwpwwwwwwwpwpwpwwwppppwpwpwwwppppppppwpwwpwwwwwwwppppwpwwwpppppwwwppwwpwwppwpwpwpwwpppwwwpwwppppwwpwpwwppwwpwpww "03@DPU`fwwwwwwppwpwpwpwwwwp""33DDUUffwwwwwwpwwppw""33DDUUffwwwwpppwwwwwpwp""33DDUUffwpwwwppwpwwwpwwwpww "03@DPU`fpf-- title: Hit and Blow -- desc: Guess the color and position! -- author: shoma -- script: lua --ui ui={} ui.background=function() for i=1,6 do for j=1,4 do circ(28*i-6,34+16*j,7,7) end end end ui.colorPallet=function() for i=1,6 do circ(172+8*i,130,2,i) end end ui.operation=function() print("Guess the color and position!",0,0,7) print("Red flug: Correct color and position",0,8,7) print("white flug: Only the color is the correct",0,16,7) print("[Operation]",0,112,7) print("Change color: left or right",0,120,7) print("Run: X , Reset: Z",0,128,7) end ui.draw=function() ui.background() ui.colorPallet() ui.operation() end --correctBox correctBox={} correctBox.correct={} correctBox.setAnswer=function() correctBox.correct={} for i=1,4 do table.insert(correctBox.correct,math.random(6)) end end correctBox.draw=function() for i=1,4 do -- print(correctBox.correct[i],200,24+8*i,12) circ(200,34+16*i,7,correctBox.correct[i]) end end --ballSet ballSet={} ballSet.init=function() ballSet.arr={} ballSet.num=0 end function create_ballSet(x,y) local obj={} obj.x=x obj.y=y obj.answer={7,7,7,7} obj.badge={ r=0, w=0 } obj.answer_stock={} obj.correct_stock={} --cursor move obj.cursor=1 obj.checkIsFull=function() for i=1,4 do if obj.answer[i]==7 then return false end end return true end obj.moveCursor=function() if btnp(0) then if obj.cursor>1 then obj.cursor=obj.cursor-1 end end if btnp(1) then if obj.cursor<4 then obj.cursor=obj.cursor+1 end end if btnp(2) then if obj.answer[obj.cursor]==1 then obj.answer[obj.cursor]=8 end obj.answer[obj.cursor]=obj.answer[obj.cursor]-1 -- obj.checkIsFull() end if btnp(3) then if obj.answer[obj.cursor]==7 then obj.answer[obj.cursor]=0 end obj.answer[obj.cursor]=obj.answer[obj.cursor]+1 -- obj.checkIsFull() end end obj.displayCursor=function() spr(1,obj.x-10,obj.y+(16*obj.cursor)) spr(1,obj.x+15,obj.y+(16*obj.cursor),-1,1,1) circb(obj.x+6,obj.y+4+(16*obj.cursor),8,14) end --check obj.positionCheck=function() --color&position check for i=1,4 do if (obj.answer[i]==correctBox.correct[i]) then obj.badge.r=obj.badge.r+1 else table.insert(obj.answer_stock, obj.answer[i]) table.insert(obj.correct_stock, correctBox.correct[i]) end end end obj.colorCheck=function() -- color check for i=1,#obj.answer_stock do if not(obj.correct_stock==nil) then for j=1,#obj.correct_stock do if (obj.answer_stock[i]==obj.correct_stock[j]) then obj.badge.w=obj.badge.w+1 table.remove(obj.correct_stock,j) break end end end end end obj.check=function() obj.badge.r=0 obj.badge.w=0 obj.answer_stock={} obj.correct_stock={} obj.positionCheck() obj.colorCheck() end --update obj.update=function() if btnp(5) then if ballSet.arr[#ballSet.arr].checkIsFull() then obj.check() else sfx(0,10,10) end end end --draw obj.draw=function() --checker print(obj.badge.r,obj.x,obj.y,2) print(obj.badge.w,obj.x+8,obj.y,12) -- ball for i=1,4 do circ(obj.x+6,obj.y+4+(16*i),7,obj.answer[i]) end end return obj end --new ballSet ballSet.new=function() if ballSet.num<6 then table.insert(ballSet.arr,create_ballSet(16+ballSet.num*28,30)) ballSet.num=ballSet.num+1 else display.finish=true end end --prev display prev={} prev.draw=function() print("Hit and Brow!",80,60,12) print("game start : X",76,72,12) end --play display play={} --update play.update=function() --cursor ballSet.arr[#ballSet.arr].moveCursor() --ballSet for i,v in pairs(ballSet.arr) do v.update() end --clear if btnp(5) then if ballSet.arr[#ballSet.arr].badge.r==4 then display.clear=true sfx(1,40,10) end end --new ballSet if btnp(5) then if ballSet.arr[#ballSet.arr].checkIsFull() then ballSet.new() end end end --draw play.draw=function() --ui ui.draw() --correctBox correctBox.draw() --cursor ballSet.arr[#ballSet.arr].displayCursor() --wall if display.clear==false and display.finish==false then rectb(181,32,40,84,7) for i=1,4 do circ(200,34+16*i,7,7) spr(2,196,31+16*i,14) end end --ballSet for i,v in pairs(ballSet.arr) do v.draw() end end clear={} clear.draw=function() print("clear!",96,8,12) end --display display={} display.init=function() display.prev=true display.play=false display.clear=false display.finish=false end display.update=function() --game start if display.prev==true then if btnp(5) or clicked then --game start ballSet.init() display.prev=false display.play=true correctBox.setAnswer() ballSet.new() end else if btnp(4) then --init display.init() ballSet.init() end end end display.draw=function() if display.prev then prev.draw() else play.update() play.draw() end --clear if display.clear then clear.draw() end end --init function init() cls() display.init() display.update() display.draw() end init() --update&draw function TIC() --display if btnp(0) or btnp(1) or btnp(2) or btnp(3) or btnp(4) or btnp(5) then cls() display.update() display.draw() end end