Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local file = fs.open("lgame/lgame","r")
- if file then
- file.close()
- local lgamec = require("../lgame/lgame")
- lgamec.setup("term")
- lgamec.fillScreen(colors.black)
- local im1 = fs.open("/drivegame/car.nfp","r")
- if im1 then
- im1.close()
- else
- lgamec.drawText(1,6,colors.white,colors.black,"Downloading sprites...")
- shell.run("pastebin","get","EnnsawZd","/drivegame/archive")
- lgamec.drawText(1,6,colors.white,colors.black,"Downloading sprites... DONE")
- lgamec.drawText(1,7,colors.white,colors.black,"Unpacking...")
- local arch = fs.open("archive/archive","r")
- if not arch then
- shell.run("pastebin", "get", "dp5ri2TJ" ,"archive/archive")
- lgamec.drawText(1,7,colors.red,colors.black,"Restart the game!")
- os.sleep(4)
- os.reboot()
- end
- shell.run("archive/archive unpack","/drivegame/archive","/drivegame/")
- lgamec.drawText(1,7,colors.white,colors.black,"Unpacking... DONE")
- os.sleep(2)
- shell.run("delete","/drivegame/archive")
- os.sleep(1)
- lgamec.fillScreen(colors.black)
- end
- if lgamec.getSize().x < 51 then
- lgamec.drawText(1,7,colors.red,colors.black,"ONLY FOR COMPUTERS!")
- os.sleep(4)
- os.reboot()
- end
- lgamec.fillScreen(colors.black)
- lgamec.lggSetDefBG(colors.black)
- scene = lgamec.createScene(1,1,lgamec.getSize().x,lgamec.getSize().y,false)
- scene:draw()
- scene:fillScreen(colors.white)
- scene:drawText(2,2,colors.black,colors.white," RACING GAME | TIMUZKAS")
- scene:drawBT("start",2,20,5,8,colors.white,colors.black," Start")
- while true do
- local event, button, x, y = os.pullEvent( "mouse_click" )
- if scene:isButton(x,y) == "start" then
- scene:hide()
- break
- else
- end
- end
- game = lgamec.createScene(1,1,lgamec.getSize().x,lgamec.getSize().y)
- game:fillScreen(colors.brown)
- game:drawSprite("road",2,1,"/drivegame/road.nfp")
- cary = lgamec.getSize().y-5
- game:drawSprite("car",12,cary,"/drivegame/car.nfp")
- lanel = {12,25,38}
- lane = 1
- function control()
- while true do
- local event, key = os.pullEvent("key")
- if key == keys.d then
- if lane < 3 then
- lane = lane + 1
- end
- elseif key == keys.a then
- if lane > 1 then
- lane = lane - 1
- end
- end
- end
- end
- function loosef()
- game:hide()
- lgamec.fillScreen(colors.red)
- lgamec.drawText(1,lgamec.getSize().y/2,colors.white,colors.red,"YOU DIED!")
- os.sleep(1)
- lgamec.clearScreen()
- lgamec.setCursorPos(1,1)
- end
- function winf()
- game:hide()
- lgamec.fillScreen(colors.green)
- lgamec.drawText(1,lgamec.getSize().y/2,colors.white,colors.red,"YOU WON!")
- os.sleep(1)
- lgamec.clearScreen()
- lgamec.setCursorPos(1,1)
- end
- lanes2 = {t1 = {16,16,15,15,14,14,13,13,12,12,12},
- t2 = {26,26,26,26,26,26,26,26,26,26,26},
- t3 = {34,35,35,36,36,37,37,38,38,39,39}}
- inlane = {16,30,41}
- function drawIndicator(linen,line,slt)
- for i=1,5 do
- game:moveSprite("in"..linen,inlane[line],2,false)
- os.sleep(slt)
- end
- end
- game:drawSprite("car2",lanes2["t1"][1],5,"/drivegame/car2.nfp")
- local ii = 2
- sleept = 0.8
- score = 0
- local l2 = "t1"
- loose = false
- lvl = 1
- function gamef()
- while true do
- ii = ii + 1
- game:moveSprite("car2",lanes2[l2][ii],2+ii,true)
- game:moveSprite("car",lanel[lane],cary,true)
- lgamec.fillScreen(colors.brown)
- game:moveSprite("road",2,1)
- game:moveSprite("car2",lanes2[l2][ii],2+ii)
- game:moveSprite("car",lanel[lane],cary)
- game:drawText(1,lgamec.getSize().y,colors.black,colors.white,"SCORE: "..score.." | LVL: "..lvl.." | "..sleept)
- os.sleep(sleept)
- if (ii == 9) then
- if game:isColiding("car","car2") then
- loose = true
- break
- else
- ii = 2
- nl2 = math.random(1,3)
- l2 = "t"..tostring(nl2)
- if (sleept < 0.2) then
- sleept = 0
- else
- sleept = sleept - 0.2
- end
- score = score + 1
- if (sleept == 0 ) then
- break
- end
- end
- end
- end
- end
- parallel.waitForAny(gamef,control)
- game:drawSprite("car3",lanes2["t3"][1],5,"drivegame/car2.nfp")
- function gamef2()
- local ii = 2
- sleept = 0.8
- local l2 = "t1"
- local l22 = "t3"
- loose = false
- while true do
- ii = ii + 1
- game:moveSprite("car2",lanes2[l2][ii],2+ii,true)
- game:moveSprite("car3",lanes2[l22][ii],2+ii,true)
- game:moveSprite("car",lanel[lane],cary,true)
- lgamec.fillScreen(colors.brown)
- game:moveSprite("road",2,1)
- game:moveSprite("car2",lanes2[l2][ii],2+ii)
- game:moveSprite("car2",lanes2[l22][ii],2+ii)
- game:moveSprite("car",lanel[lane],cary)
- game:drawText(1,lgamec.getSize().y,colors.black,colors.white,"SCORE: "..score.." | LVL: "..lvl)
- os.sleep(sleept)
- if (ii == 9) then
- if game:isColiding("car","car2") or game:isColiding("car","car3") then
- loose = true
- break
- else
- ii = 2
- nl2 = math.random(1,3)
- l2 = "t"..tostring(nl2)
- repeat
- nl22 = math.random(1,3)
- l22 = "t"..tostring(nl22)
- until l22 ~= l2
- if (sleept < 0.21) then
- sleept = 0
- else
- sleept = sleept - 0.2
- end
- score = score + 1
- if (sleept == 0 ) then
- break
- end
- end
- end
- end
- end
- if loose then
- loosef()
- else
- lvl = 2
- parallel.waitForAny(gamef2,control)
- if (loose) then
- loosef()
- else
- winf()
- end
- end
- lgamec.exit()
- else
- term.clear()
- term.setCursorPos(1,2)
- term.write("Installing lgame...!")
- shell.run("pastebin", "get", "z3p689g1" ,"lgame/lgame")
- os.sleep(1)
- term.setCursorPos(1,2)
- term.write("Restart the game!")
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement