| @@ -3,4 +3,3 @@ rm game.zip | |||||
| zip -r game * | zip -r game * | ||||
| mv game.zip game.love | mv game.zip game.love | ||||
| love game.love | love game.love | ||||
| rm game.love | |||||
| @@ -12,6 +12,8 @@ vec4 effect(vec4 color, Image image, vec2 uvs, vec2 screen_coords) { | |||||
| debug = true | debug = true | ||||
| --GLOBAL VARIABLES | --GLOBAL VARIABLES | ||||
| frameratecap = 1/60 | |||||
| realtimer = 0 | |||||
| status = "offline" | status = "offline" | ||||
| gameMode = "normal" | gameMode = "normal" | ||||
| ts = 0 | ts = 0 | ||||
| @@ -60,7 +62,7 @@ nuckemodactive = 0 | |||||
| maxspeed = 700 | maxspeed = 700 | ||||
| DIFFERENCE_X = 1 | DIFFERENCE_X = 1 | ||||
| DIFFERENCE_Y = 1 | DIFFERENCE_Y = 1 | ||||
| paddle_SPEED = 20 | |||||
| paddle_SPEED = 200 | |||||
| textamount = 15 | textamount = 15 | ||||
| AI_STRIKEMOD = 1000 | AI_STRIKEMOD = 1000 | ||||
| resolutionWin = 0 | resolutionWin = 0 | ||||
| @@ -68,7 +70,7 @@ AGAINST_AI = 0 | |||||
| RESOLUTION_SET = 0 | RESOLUTION_SET = 0 | ||||
| AI_NUKEMOD = 1000 | AI_NUKEMOD = 1000 | ||||
| animstart = true | animstart = true | ||||
| AI_SPEED = 30 | |||||
| AI_SPEED = 300 | |||||
| craz = 0 | craz = 0 | ||||
| AI_LEVEL = 500 | AI_LEVEL = 500 | ||||
| isFullscreen = 0 | isFullscreen = 0 | ||||
| @@ -698,7 +700,7 @@ function startShake(duration, magnitude) | |||||
| end | end | ||||
| function displayFPS() | function displayFPS() | ||||
| --love.window.setTitle(love.timer.getFPS()) | --love.window.setTitle(love.timer.getFPS()) | ||||
| love.window.setTitle(globalState .. " " .. gameState) | |||||
| --love.window.setTitle(globalState .. " " .. gameState .. " " .. paddle_SPEED .. " " .. p1bonus .. " " .. player1.dy) | |||||
| if love.keyboard.isDown("space") then | if love.keyboard.isDown("space") then | ||||
| player1nukescore = 200 | player1nukescore = 200 | ||||
| player1score = player1score + 0.2 | player1score = player1score + 0.2 | ||||
| @@ -715,6 +717,7 @@ end | |||||
| function love.update(dt) | function love.update(dt) | ||||
| --print("IMPORTANT!!!!!" .. globalState .. gameState) | --print("IMPORTANT!!!!!" .. globalState .. gameState) | ||||
| staticanimatorcounter(dt) | staticanimatorcounter(dt) | ||||
| if gameState == "chooseIP" then | if gameState == "chooseIP" then | ||||
| checkCurrentServer(dt) | checkCurrentServer(dt) | ||||
| @@ -982,7 +985,7 @@ function hardmanager(diff) | |||||
| if (diff == "easy") then | if (diff == "easy") then | ||||
| INDIC[1] = ">" | INDIC[1] = ">" | ||||
| AGAINST_AI = 1 | AGAINST_AI = 1 | ||||
| AI_SPEED = ballSet / 10 | |||||
| AI_SPEED = ballSet | |||||
| AI_STRIKEMOD = 100 | AI_STRIKEMOD = 100 | ||||
| AI_NUKEMOD = 1000 | AI_NUKEMOD = 1000 | ||||
| AI_LEVEL = 350 | AI_LEVEL = 350 | ||||
| @@ -993,7 +996,7 @@ function hardmanager(diff) | |||||
| end | end | ||||
| if (diff == "normal") then | if (diff == "normal") then | ||||
| INDIC[2] = ">" | INDIC[2] = ">" | ||||
| AI_SPEED = ballSet / 10 | |||||
| AI_SPEED = ballSet | |||||
| AI_LEVEL = 500 | AI_LEVEL = 500 | ||||
| AI_NUKEMOD = 250 | AI_NUKEMOD = 250 | ||||
| AI_STRIKEMOD = 60 | AI_STRIKEMOD = 60 | ||||
| @@ -1006,7 +1009,6 @@ function hardmanager(diff) | |||||
| if (diff == "hard") then | if (diff == "hard") then | ||||
| INDIC[3] = ">" | INDIC[3] = ">" | ||||
| AI_SPEED = ballSpeed * 1.1 + 50 | AI_SPEED = ballSpeed * 1.1 + 50 | ||||
| AI_SPEED = AI_SPEED / 10 | |||||
| AI_LEVEL = 700 | AI_LEVEL = 700 | ||||
| AI_NUKEMOD = 200 | AI_NUKEMOD = 200 | ||||
| AI_STRIKEMOD = 20 | AI_STRIKEMOD = 20 | ||||
| @@ -1019,7 +1021,6 @@ function hardmanager(diff) | |||||
| if (diff == "smart") then | if (diff == "smart") then | ||||
| INDIC[3] = ">" | INDIC[3] = ">" | ||||
| AI_SPEED = ballSpeed * 1.1 + 50 | AI_SPEED = ballSpeed * 1.1 + 50 | ||||
| AI_SPEED = AI_SPEED / 10 | |||||
| AI_LEVEL = 1500 | AI_LEVEL = 1500 | ||||
| AI_NUKEMOD = 200 | AI_NUKEMOD = 200 | ||||
| AI_STRIKEMOD = 20 | AI_STRIKEMOD = 20 | ||||
| @@ -1032,7 +1033,6 @@ function hardmanager(diff) | |||||
| if (diff == "practice") then | if (diff == "practice") then | ||||
| INDIC[3] = ">" | INDIC[3] = ">" | ||||
| AI_SPEED = ballSpeed * 500 + 50 | AI_SPEED = ballSpeed * 500 + 50 | ||||
| AI_SPEED = AI_SPEED / 10 | |||||
| AI_LEVEL = 700 | AI_LEVEL = 700 | ||||
| AI_NUKEMOD = 9000000000 | AI_NUKEMOD = 9000000000 | ||||
| AI_STRIKEMOD = 90000000 | AI_STRIKEMOD = 90000000 | ||||
| @@ -1239,15 +1239,15 @@ function speedSetter(requesttype) | |||||
| synctype = 0 | synctype = 0 | ||||
| maxspeed = 700 | maxspeed = 700 | ||||
| synctext = "Independent" | synctext = "Independent" | ||||
| paddle_SPEED = ballSet / 10 | |||||
| AI_SPEED = ballSet / 10 | |||||
| paddle_SPEED = ballSet | |||||
| AI_SPEED = ballSet | |||||
| end | end | ||||
| if (nuckemodactive == 1) then | if (nuckemodactive == 1) then | ||||
| areanuclear = 1 | areanuclear = 1 | ||||
| ballSet = 2000 | ballSet = 2000 | ||||
| maxspeed = 2000 | maxspeed = 2000 | ||||
| paddle_SPEED = ballSet / 10 | |||||
| AI_SPEED = ballSet / 10 | |||||
| paddle_SPEED = ballSet | |||||
| AI_SPEED = ballSet | |||||
| synctext = "death is imminent" | synctext = "death is imminent" | ||||
| end | end | ||||
| ballSpeed = ballSet | ballSpeed = ballSet | ||||
| @@ -1526,9 +1526,13 @@ function serveBot() --THIS IS USED TO CHANGE TEXT/BALL DIRECTION ON DIFFERENT SE | |||||
| if ((globalState ~= "clienttest" and love.keyboard.isDown("q")) or (globalState == "clienttest" and lastSentKeyP1 == "q")) then | if ((globalState ~= "clienttest" and love.keyboard.isDown("q")) or (globalState == "clienttest" and lastSentKeyP1 == "q")) then | ||||
| TEXT = "Lets Begin!" | TEXT = "Lets Begin!" | ||||
| ball_DIR = 1 | ball_DIR = 1 | ||||
| for i = 1, maxBalls do | |||||
| ball[i]:reset(i, 1) | |||||
| end | |||||
| if maxBalls == 1 then | |||||
| ball[1]:reset(1, 1) | |||||
| else | |||||
| for i = 1, maxBalls do | |||||
| ball[i]:reset(i) | |||||
| end | |||||
| end | |||||
| gameState = "play" | gameState = "play" | ||||
| end | end | ||||
| @@ -1538,9 +1542,13 @@ function serveBot() --THIS IS USED TO CHANGE TEXT/BALL DIRECTION ON DIFFERENT SE | |||||
| if (AGAINST_AI == 1) then | if (AGAINST_AI == 1) then | ||||
| TEXT = "" | TEXT = "" | ||||
| ball_DIR = -1 | ball_DIR = -1 | ||||
| for i = 1, maxBalls do | |||||
| ball[i]:reset(i, 2) | |||||
| end | |||||
| if maxBalls == 1 then | |||||
| ball[2]:reset(i, 2) | |||||
| else | |||||
| for i = 1, maxBalls do | |||||
| ball[i]:reset(i) | |||||
| end | |||||
| end | |||||
| gameState = "play" | gameState = "play" | ||||
| @@ -1548,9 +1556,13 @@ function serveBot() --THIS IS USED TO CHANGE TEXT/BALL DIRECTION ON DIFFERENT SE | |||||
| if (((globalState == "nettest" and lastSentKeyClient == "p") or ((globalState ~= "nettest") and love.keyboard.isDown("p")))and AGAINST_AI == 0) then | if (((globalState == "nettest" and lastSentKeyClient == "p") or ((globalState ~= "nettest") and love.keyboard.isDown("p")))and AGAINST_AI == 0) then | ||||
| TEXT = "Lets Begin" | TEXT = "Lets Begin" | ||||
| ball_DIR = -1 | ball_DIR = -1 | ||||
| for i = 1, maxBalls do | |||||
| ball[i]:reset(i, 2) | |||||
| end | |||||
| if maxBalls == 1 then | |||||
| ball[1]:reset(1, 2) | |||||
| else | |||||
| for i = 1, maxBalls do | |||||
| ball[i]:reset(i) | |||||
| end | |||||
| end | |||||
| --love.window.setTitle("An atttttttt") | --love.window.setTitle("An atttttttt") | ||||
| gameState = "play" | gameState = "play" | ||||
| @@ -1594,7 +1606,7 @@ function resettinggenius() | |||||
| for i = 1, maxBalls do | for i = 1, maxBalls do | ||||
| ball[i]:reset(i) | ball[i]:reset(i) | ||||
| end | end | ||||
| paddle_SPEED = 20 | |||||
| paddle_SPEED = 200 | |||||
| nuclearanimation = 3 | nuclearanimation = 3 | ||||
| timeIsSlow = false | timeIsSlow = false | ||||
| timeIsSlow2 = false | timeIsSlow2 = false | ||||
| @@ -1685,4 +1697,112 @@ function checkCurrentServer(dt) | |||||
| end | end | ||||
| end | |||||
| function selfHost(dt) | |||||
| local running = true | |||||
| local socket = require 'socket' | |||||
| local udp = socket.udp() | |||||
| local player1ip, player2ip, player1port, player2port = "127.0.0.1", "none", nil, nil | |||||
| udp:settimeout(0) | |||||
| udp:setsockname('*', 12345) | |||||
| local p1ping = 0 | |||||
| local p2ping = 0 | |||||
| local requesterip | |||||
| local requresterport | |||||
| while running do | |||||
| local data, msg_or_ip, port_or_nil | |||||
| local p1data, p2data | |||||
| repeat | |||||
| data, msg_or_ip, port_or_nil = udp:receivefrom() | |||||
| if data then | |||||
| if data == "HELLO" then | |||||
| requesterip = msg_or_ip | |||||
| requesterport = port_or_nil | |||||
| else | |||||
| print(string.sub(data,1,1) .. "Playerlist: " .. player1ip .. " " .. player2ip) | |||||
| if (player1ip == msg_or_ip) then | |||||
| p1ping = 0 | |||||
| p1data = data | |||||
| elseif player2ip == msg_or_ip then | |||||
| p2data = data | |||||
| p2ping = 0 | |||||
| else | |||||
| if (player1ip == "none") then | |||||
| player1ip = msg_or_ip | |||||
| p1data = data | |||||
| p1ping = 0 | |||||
| player1port = port_or_nil | |||||
| print("CONNECTED: PLAYER 1 FROM: " .. player1ip) | |||||
| elseif player2ip == "none" and msg_or_ip ~= player1ip then | |||||
| player2ip = msg_or_ip | |||||
| p2data = data | |||||
| p2ping = 0 | |||||
| player2port = port_or_nil | |||||
| print("CONNECTED: PLAYER 2 FROM: " .. player2ip) | |||||
| elseif (player1ip ~= msg_or_ip and player2ip ~= msg_or_ip) then | |||||
| print("Lobby Full!" .. player1ip .. player2ip) | |||||
| end | |||||
| end | |||||
| end | |||||
| end | |||||
| until not data | |||||
| if player1ip ~= "none" then | |||||
| p1ping = p1ping + 1 | |||||
| if p1ping > 100 then | |||||
| if p2data then | |||||
| udp:sendto(p2data .. '|' .. p1ping, player1ip, player1port) | |||||
| end | |||||
| print("PLAYER 1 DISCONNECTED") | |||||
| p1data = nil | |||||
| player1ip = "none" | |||||
| player1port = nil | |||||
| end | |||||
| end | |||||
| if player2ip ~= "none" then | |||||
| p2ping = p2ping + 1 | |||||
| if p2ping > 100 then | |||||
| if p1data then | |||||
| udp:sendto(p1data .. '|' .. p2ping, player2ip, player2port) | |||||
| end | |||||
| print("PLAYER 2 DISCONNECTED") | |||||
| p2data = nil | |||||
| player2ip = "none" | |||||
| player2port = nil | |||||
| end | |||||
| end | |||||
| if p1data and player2port then | |||||
| udp:sendto(p1data .. '|' .. p2ping, player2ip, player2port) | |||||
| print("SENT TO " .. player2ip .. ":" .. player2port .. " : " .. string.sub(p1data,1,1)) | |||||
| end | |||||
| if p2data and player1port then | |||||
| udp:sendto(p2data .. '|' .. p1ping, player1ip, player1port) | |||||
| print("SENT TO " .. player1ip .. ":" .. player1port .. " : " .. string.sub(p2data,1,1)) | |||||
| --print("1::" .. p1data) | |||||
| --print("2::" .. p2data) | |||||
| --print("SENT1: " .. player2ip .. " " .. player2port .. " " .. p1data) | |||||
| --print("SENT2: " .. player1ip .. " " .. player1port .. " " .. p2data) | |||||
| end | |||||
| if requesterip then | |||||
| print("getting pnged!") | |||||
| if player1ip == "none" then | |||||
| udp:sendto("nettest",requesterip, requesterport) | |||||
| print("nettest av to: " .. requesterip) | |||||
| elseif player2ip == "none" then | |||||
| udp:sendto("clienttest", requesterip, requesterport) | |||||
| print("clienttest av to: " .. requesterip) | |||||
| else | |||||
| udp:sendto("full", requesterip, requesterport) | |||||
| print("full to: " .. msg_or_ip) | |||||
| end | |||||
| requesterip, requesterport = nil | |||||
| end | |||||
| socket.sleep(0.015) | |||||
| end | |||||
| end | end | ||||
| @@ -17,6 +17,7 @@ function paddle:init(x, y, width, height, player) | |||||
| end | end | ||||
| function paddle:update(dt) | function paddle:update(dt) | ||||
| --love.window.setTitle(tostring(player1.velocity * dt) .. " " .. tostring(player1.dy) .. " " .. tostring(dt) ) | |||||
| if areanuclear == 0 then | if areanuclear == 0 then | ||||
| self.RED = 1 | self.RED = 1 | ||||
| self.GREEN = 1 | self.GREEN = 1 | ||||
| @@ -30,22 +31,23 @@ function paddle:update(dt) | |||||
| self.dy = self.dy / 2 | self.dy = self.dy / 2 | ||||
| end | end | ||||
| if (self.dy == 0) then | if (self.dy == 0) then | ||||
| self.velocity = self.velocity / 1.1 | |||||
| if (self.velocity < 1 and self.velocity > -1) then | |||||
| self.velocity = self.velocity - (self.velocity - self.velocity / (1.4))*dt*20 | |||||
| if (self.velocity*dt < 0.5 and self.velocity*dt > -0.5) then | |||||
| self.velocity = 0 | self.velocity = 0 | ||||
| end | end | ||||
| else | else | ||||
| self.velocity = self.velocity + self.dy*dt | |||||
| self.velocity = self.velocity + self.dy*7*dt | |||||
| end | end | ||||
| if (self.velocity < 0) then | if (self.velocity < 0) then | ||||
| if (self.y > 0) then | if (self.y > 0) then | ||||
| self.y = self.y + self.velocity | |||||
| self.y = self.y + self.velocity * dt | |||||
| else | else | ||||
| self.velocity = 0 | self.velocity = 0 | ||||
| end | end | ||||
| elseif (self.velocity > 0) then | elseif (self.velocity > 0) then | ||||
| if (self.y < VIRTUAL_HEIGHT - 80) then | if (self.y < VIRTUAL_HEIGHT - 80) then | ||||
| self.y = self.y + self.velocity | |||||
| self.y = self.y + self.velocity * dt | |||||
| else | else | ||||
| self.velocity = 0 | self.velocity = 0 | ||||
| end | end | ||||
| @@ -58,9 +60,9 @@ function paddle:update(dt) | |||||
| self.yx = self.y | self.yx = self.y | ||||
| end | end | ||||
| if (self.yx < self.y) then | if (self.yx < self.y) then | ||||
| self.yx = self.yx + math.abs(paddle_SPEED/1.7) | |||||
| self.yx = self.yx + math.abs(paddle_SPEED/1.7) * dt | |||||
| elseif (self.yx > self.y) then | elseif (self.yx > self.y) then | ||||
| self.yx = self.yx - math.abs(paddle_SPEED/1.7) | |||||
| self.yx = self.yx - math.abs(paddle_SPEED/1.7) * dt | |||||
| end | end | ||||
| end | end | ||||
| @@ -79,9 +79,7 @@ function evaluateClosestBall(target) | |||||
| end | end | ||||
| function predictBall(target, px) | function predictBall(target, px) | ||||
| --print("BALLSTATS:" .. target.x .. " " .. target.y) | --print("BALLSTATS:" .. target.x .. " " .. target.y) | ||||
| if VIRTUAL_WIDTH - target.x < AI_SPEED then | |||||
| return target.y | |||||
| elseif target.dx > 0 then | |||||
| if target.dx > 0 then | |||||
| local ans = recursiveCalculations(px, target.x, target.y, target.dx, target.dy, 1) | local ans = recursiveCalculations(px, target.x, target.y, target.dx, target.dy, 1) | ||||
| return ans | return ans | ||||
| else | else | ||||
| @@ -90,50 +88,64 @@ function predictBall(target, px) | |||||
| end | end | ||||
| end | end | ||||
| function recursiveCalculations(px, ex, ey, edx, edy, ifspecial) | function recursiveCalculations(px, ex, ey, edx, edy, ifspecial) | ||||
| if (edy > 0) then | |||||
| --print ("normal" .. ex .." " .. ey .. " " .. edx .. " " .. edy) | |||||
| local time = (VIRTUAL_HEIGHT-ey) / (ballSpeed * edy) | |||||
| local distance = (ballSpeed * edx) * time | |||||
| --print(distance .. " " .. edx .. " " .. time .. " " .. (px-ex)) | |||||
| if distance > (px - ex) then | |||||
| local anstime = (px - ex) / (ballSpeed * edx) | |||||
| local bonus = (ballSpeed * edy) * anstime | |||||
| --print("results: " .. bonus .. " " .. edx .. " " .. anstime .. " " .. (px-ex)) | |||||
| -- if (ifspecial == 0) then | |||||
| return ey + bonus | |||||
| -- else | |||||
| -- return -1 | |||||
| --end | |||||
| else | |||||
| local emulatedx = ex + distance | |||||
| local emulatedy = VIRTUAL_HEIGHT | |||||
| return recursiveCalculations(px, emulatedx, emulatedy, edx, -edy, 0) | |||||
| end | |||||
| elseif edy == 0 then | |||||
| return ey | |||||
| else | |||||
| --print ("inverse" .. ex .." " .. ey .. " " .. edx .. " " .. edy) | |||||
| local time = (ey) / math.abs((ballSpeed * edy)) | |||||
| local distance = (ballSpeed * edx) * time | |||||
| --print(distance .. " " .. edx .. " " .. time .. " " .. (px-ex)) | |||||
| if VIRTUAL_WIDTH - ex < AI_SPEED then | |||||
| local time = (VIRTUAL_WIDTH - ex)/(ballSpeed*edx) | |||||
| local distance = (ballSpeed * edy) * time | |||||
| love.window.setTitle(ey + (distance*edy)) | |||||
| return ey + (distance*edy) | |||||
| else | |||||
| --print("Why th efuck ") | |||||
| if (edy > 0) then | |||||
| --print ("normal" .. ex .." " .. ey .. " " .. edx .. " " .. edy) | |||||
| local time = (VIRTUAL_HEIGHT-ey) / (ballSpeed * edy) | |||||
| local distance = (ballSpeed * edx) * time | |||||
| --print(distance .. " " .. edx .. " " .. time .. " " .. (px-ex)) | |||||
| if distance > (px - ex) then | |||||
| local anstime = (px - ex) / (ballSpeed * edx) | |||||
| local bonus = (ballSpeed * edy) * anstime | |||||
| --print("results: " .. bonus .. " " .. edx .. " " .. anstime .. " " .. (px-ex)) | |||||
| -- if (ifspecial == 0) then | |||||
| return ey + bonus | |||||
| -- else | |||||
| -- return -1 | |||||
| --end | |||||
| else | |||||
| local emulatedx = ex + distance | |||||
| local emulatedy = VIRTUAL_HEIGHT | |||||
| local answer = recursiveCalculations(px, emulatedx, emulatedy, edx, -edy, 0) | |||||
| love.window.setTitle(answer) | |||||
| return answer | |||||
| end | |||||
| elseif edy == 0 then | |||||
| return ey | |||||
| else | |||||
| --print ("inverse" .. ex .." " .. ey .. " " .. edx .. " " .. edy) | |||||
| local time = (ey) / math.abs((ballSpeed * edy)) | |||||
| local distance = (ballSpeed * edx) * time | |||||
| --print(distance .. " " .. edx .. " " .. time .. " " .. (px-ex)) | |||||
| --print("Why th efuck ") | |||||
| if distance > (px - ex) then | |||||
| local anstime = (px - ex) / (ballSpeed * edx) | |||||
| local bonus = (ballSpeed * edy) * anstime | |||||
| --print("results: " .. bonus .. " " .. edx .. " " .. anstime .. " " .. (px-ex)) | |||||
| -- if (ifspecial == 0) then | |||||
| return ey + bonus | |||||
| -- else | |||||
| -- return -1 | |||||
| -- end | |||||
| else | |||||
| local emulatedx = ex + distance | |||||
| local emulatedy = 0 | |||||
| ----print("results: " .. bonus .. " " .. edx .. " " .. anstime .. " " .. (VIRTUAL_WIDTH-ex)) | |||||
| return recursiveCalculations(px, emulatedx, emulatedy, edx, -edy, 0) | |||||
| if distance > (px - ex) then | |||||
| local anstime = (px - ex) / (ballSpeed * edx) | |||||
| local bonus = (ballSpeed * edy) * anstime | |||||
| --print("results: " .. bonus .. " " .. edx .. " " .. anstime .. " " .. (px-ex)) | |||||
| -- if (ifspecial == 0) then | |||||
| local answer = ey + bonus | |||||
| love.window.setTitle(answer) | |||||
| return answer | |||||
| -- else | |||||
| -- return -1 | |||||
| -- end | |||||
| else | |||||
| local emulatedx = ex + distance | |||||
| local emulatedy = 0 | |||||
| ----print("results: " .. bonus .. " " .. edx .. " " .. anstime .. " " .. (VIRTUAL_WIDTH-ex)) | |||||
| local answer = recursiveCalculations(px, emulatedx, emulatedy, edx, -edy, 0) | |||||
| love.window.setTitle(answer) | |||||
| return answer | |||||
| end | |||||
| end | end | ||||
| end | end | ||||
| end | end | ||||
| @@ -93,7 +93,7 @@ function basegame(dt) | |||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| paddle_SPEED = paddle_SPEED * 1.10 | paddle_SPEED = paddle_SPEED * 1.10 | ||||
| elseif (synctype == 1) then | elseif (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| AI_SPEED = AI_SPEED * 1.10 | AI_SPEED = AI_SPEED * 1.10 | ||||
| @@ -209,7 +209,7 @@ function basegame(dt) | |||||
| paddle_SPEED = paddle_SPEED * 1.10 | paddle_SPEED = paddle_SPEED * 1.10 | ||||
| end | end | ||||
| if (synctype == 1) then | if (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| AI_SPEED = AI_SPEED * 1.10 | AI_SPEED = AI_SPEED * 1.10 | ||||
| @@ -383,10 +383,10 @@ function goalManager() | |||||
| player2striken = 0 | player2striken = 0 | ||||
| ballSpeed = ballSet | ballSpeed = ballSet | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| paddle_SPEED = ballSet / 10 | |||||
| paddle_SPEED = ballSet | |||||
| end | end | ||||
| if (synctype == 1) then | if (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| AI_SPEED = difficultyl / 10 | AI_SPEED = difficultyl / 10 | ||||
| @@ -425,15 +425,15 @@ function goalManager() | |||||
| ballSpeed = ballSet | ballSpeed = ballSet | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| paddle_SPEED = ballSet / 10 | |||||
| AI_SPEED = ballSet / 10 | |||||
| paddle_SPEED = ballSet | |||||
| AI_SPEED = ballSet | |||||
| end | end | ||||
| if (synctype == 1) then | if (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| AI_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| AI_SPEED = ballSpeed | |||||
| end | end | ||||
| AI_SPEED = difficultyl / 10 | |||||
| AI_SPEED = difficultyl | |||||
| if (player1score == ptw) then | if (player1score == ptw) then | ||||
| ball[i]:reset(i) | ball[i]:reset(i) | ||||
| @@ -488,7 +488,7 @@ function powerAvailability() | |||||
| paddle_SPEED = paddle_SPEED * 2 | paddle_SPEED = paddle_SPEED * 2 | ||||
| end | end | ||||
| if (synctype == 1) then | if (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| AI_SPEED = AI_SPEED * 2.2 | AI_SPEED = AI_SPEED * 2.2 | ||||
| @@ -538,7 +538,7 @@ function powerAvailability() | |||||
| paddle_SPEED = paddle_SPEED * 2 | paddle_SPEED = paddle_SPEED * 2 | ||||
| end | end | ||||
| if (synctype == 1) then | if (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| AI_SPEED = AI_SPEED * 2.2 | AI_SPEED = AI_SPEED * 2.2 | ||||
| @@ -1094,7 +1094,7 @@ function clientsBaseGame(dt) | |||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| paddle_SPEED = paddle_SPEED * 1.10 | paddle_SPEED = paddle_SPEED * 1.10 | ||||
| elseif (synctype == 1) then | elseif (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| AI_SPEED = AI_SPEED * 1.10 | AI_SPEED = AI_SPEED * 1.10 | ||||
| @@ -1154,7 +1154,7 @@ function clientsBaseGame(dt) | |||||
| paddle_SPEED = paddle_SPEED * 1.10 | paddle_SPEED = paddle_SPEED * 1.10 | ||||
| end | end | ||||
| if (synctype == 1) then | if (synctype == 1) then | ||||
| paddle_SPEED = ballSpeed / 10 | |||||
| paddle_SPEED = ballSpeed | |||||
| end | end | ||||
| if (synctype == 0) then | if (synctype == 0) then | ||||
| AI_SPEED = AI_SPEED * 1.10 | AI_SPEED = AI_SPEED * 1.10 | ||||
| @@ -1291,5 +1291,6 @@ function clientsBaseGame(dt) | |||||
| goalManager() | goalManager() | ||||
| powerAvailability() | powerAvailability() | ||||
| player1:update(dt) | player1:update(dt) | ||||
| love.event.quit() | |||||
| player2:update(dt) | player2:update(dt) | ||||
| end | end | ||||