From 2f870078185cf62eafe0de343faa4eef3b4754fa Mon Sep 17 00:00:00 2001 From: Svjatoslav Agejenko Date: Sat, 14 Sep 2024 20:38:30 +0300 Subject: [PATCH] Using AI to improve code readability --- .../KHK Intellektika 2004 demo/RAY.BAS | 168 +++++++++--------- 1 file changed, 80 insertions(+), 88 deletions(-) diff --git a/Graphics/Presentations/KHK Intellektika 2004 demo/RAY.BAS b/Graphics/Presentations/KHK Intellektika 2004 demo/RAY.BAS index 89451bc..a790285 100755 --- a/Graphics/Presentations/KHK Intellektika 2004 demo/RAY.BAS +++ b/Graphics/Presentations/KHK Intellektika 2004 demo/RAY.BAS @@ -40,7 +40,6 @@ INPUT #1, pictyw INPUT #1, pictx INPUT #1, picty - 1 x1 = RND * 160 y1 = RND * 160 @@ -49,15 +48,15 @@ y2 = y1 + RND * 10 + 1 IF (frm > 50) AND (frm < 150) THEN square x1, y1, x2, y2, RND * 200, RND * 10 IF (frm > 150) AND (picty < 177) THEN - - FOR ff = 1 TO 180 * 2 - INPUT #1, c - landc(pictx, picty) = c - landh(pictx, picty) = 0 - pictx = pictx + 1 - IF pictx >= pictxw THEN pictx = 0: picty = picty + 1 - IF picty >= pictyw THEN picty = 0 - NEXT ff + + FOR ff = 1 TO 180 * 2 + INPUT #1, c + landc(pictx, picty) = c + landh(pictx, picty) = 0 + pictx = pictx + 1 + IF pictx >= pictxw THEN pictx = 0: picty = picty + 1 + IF picty >= pictyw THEN picty = 0 + NEXT ff END IF IF frm = 430 THEN dispimg @@ -74,8 +73,8 @@ SUB dispframe l = 0 zst = -.0031 * ste FOR z = .5 TO -.5 STEP zst -traceline SIN(zmyan + z) * dist + myx, COS(zmyan + z) * dist + myy, l -l = l + ste + traceline SIN(zmyan + z) * dist + myx, COS(zmyan + z) * dist + myy, l + l = l + ste NEXT z END SUB @@ -84,23 +83,21 @@ SUB dispimg CLOSE #1 - OPEN "cat.i01" FOR INPUT AS #1 INPUT #1, pictxw INPUT #1, pictyw FOR y = 0 TO pictyw - 1 -FOR x = 0 TO pictxw - 1 -INPUT #1, c -PSET (x + 50, 150 - y), c -NEXT x + FOR x = 0 TO pictxw - 1 + INPUT #1, c + PSET (x + 50, 150 - y), c + NEXT x NEXT y CLOSE #1 - FOR a = 1 TO 50 - SOUND 0, 1 + SOUND 0, 1 NEXT a CHAIN "KHKDEMO2.BAS" @@ -108,20 +105,19 @@ END SUB SUB displand - FOR z = 0 TO 180 -zs = 1 -IF z > 120 THEN zs = .7 -IF z > 160 THEN zs = .6 -FOR zx = 0 TO 180 STEP zs -y1 = landh(zx, z) - 80 -zx1 = zx - 90 -z1 = 300 - z -zx2 = zx1 / z1 * 190 -zy2 = y1 / z1 * 190 - -LINE (zx2 + 160, 40 - zy2)-(zx2 + 160, 200), landc(zx, z) -NEXT zx + zs = 1 + IF z > 120 THEN zs = .7 + IF z > 160 THEN zs = .6 + FOR zx = 0 TO 180 STEP zs + y1 = landh(zx, z) - 80 + zx1 = zx - 90 + z1 = 300 - z + zx2 = zx1 / z1 * 190 + zy2 = y1 / z1 * 190 + + LINE (zx2 + 160, 40 - zy2)-(zx2 + 160, 200), landc(zx, z) + NEXT zx NEXT z LOCATE 1, 1 @@ -146,38 +142,37 @@ SUB makeland square 0, 0, 180, 180, 15, 0 FOR y = 0 TO 180 -FOR x = 0 TO 180 -x1 = (x \ 10) MOD 2 -y1 = (y \ 10) MOD 2 -c = (x1 + y1) MOD 2 -IF c = 0 THEN - landc(x, y) = getcol(250, 250, 250) -ELSE - landc(x, y) = getcol(250, 50, 50) -END IF -NEXT x + FOR x = 0 TO 180 + x1 = (x \ 10) MOD 2 + y1 = (y \ 10) MOD 2 + c = (x1 + y1) MOD 2 + IF c = 0 THEN + landc(x, y) = getcol(250, 250, 250) + ELSE + landc(x, y) = getcol(250, 50, 50) + END IF + NEXT x NEXT y FOR y = 10 TO 90 -FOR x = 90 TO 170 -v = SQR((ABS(50 - y)) ^ 2 + (ABS(130 - x)) ^ 2) -h = SQR((60 - v) * (60 + v)) - 35 -IF h > 0 THEN landh(x, y) = h -NEXT x + FOR x = 90 TO 170 + v = SQR((ABS(50 - y)) ^ 2 + (ABS(130 - x)) ^ 2) + h = SQR((60 - v) * (60 + v)) - 35 + IF h > 0 THEN landh(x, y) = h + NEXT x NEXT y tower 20, 20 tower 60, 20 tower 40, 150 - FOR za = 0 TO 20 STEP .1 -x = SIN(za) * (1 + (za * 2)) + 100 -y = COS(za) * (1 + (za * 2)) + 100 -landc(x, y) = getcol(20, RND * 200, 20) -landc(x + 1, y) = getcol(20, RND * 200, 20) -landc(x, y + 1) = getcol(20, RND * 200, 20) -landc(x + 1, y + 1) = getcol(20, RND * 200, 20) + x = SIN(za) * (1 + (za * 2)) + 100 + y = COS(za) * (1 + (za * 2)) + 100 + landc(x, y) = getcol(20, RND * 200, 20) + landc(x + 1, y) = getcol(20, RND * 200, 20) + landc(x, y + 1) = getcol(20, RND * 200, 20) + landc(x + 1, y + 1) = getcol(20, RND * 200, 20) NEXT za END SUB @@ -185,25 +180,25 @@ END SUB SUB setupal c = 0 FOR r = 0 TO 5 -FOR g = 0 TO 5 -FOR b = 0 TO 5 -OUT &H3C8, c -c = c + 1 -OUT &H3C9, r * 12 -OUT &H3C9, g * 12 -OUT &H3C9, b * 12 -NEXT b -NEXT g + FOR g = 0 TO 5 + FOR b = 0 TO 5 + OUT &H3C8, c + c = c + 1 + OUT &H3C9, r * 12 + OUT &H3C9, g * 12 + OUT &H3C9, b * 12 + NEXT b + NEXT g NEXT r END SUB SUB square (x1, y1, x2, y2, c, h) FOR y = y1 TO y2 -FOR x = x1 TO x2 -landh(x, y) = h -landc(x, y) = c -NEXT x + FOR x = x1 TO x2 + landh(x, y) = h + landc(x, y) = c + NEXT x NEXT y END SUB @@ -229,7 +224,7 @@ END SUB SUB tower (x, y) FOR a = 10 TO 0 STEP -1 -square x - a, y - a, x + a, y + a, getcol(100, 0, a * 20), 20 - a + square x - a, y - a, x + a, y + a, getcol(100, 0, a * 20), 20 - a NEXT a square x - 11, y - 11, x - 9, y - 9, getcol(255, 0, 0), 20 @@ -237,33 +232,32 @@ square x + 9, y - 11, x + 11, y - 9, getcol(0, 255, 0), 20 square x - 11, y + 9, x - 9, y + 11, getcol(0, 0, 255), 20 square x + 9, y + 9, x + 11, y + 11, getcol(255, 255, 0), 20 - END SUB SUB traceline (x, y, xl) IF x < 0 THEN -zpr = myx / (myx - x) -x = 0 -y = myy - ((myy - y) * zpr) + zpr = myx / (myx - x) + x = 0 + y = myy - ((myy - y) * zpr) END IF IF y < 0 THEN -zpr = myy / (myy - y) -y = 0 -x = myx - ((myx - x) * zpr) + zpr = myy / (myy - y) + y = 0 + x = myx - ((myx - x) * zpr) END IF IF x > 180 THEN -zpr = (180 - myx) / (x - myx) -x = 180 -y = myy - ((myy - y) * zpr) + zpr = (180 - myx) / (x - myx) + x = 180 + y = myy - ((myy - y) * zpr) END IF IF y > 180 THEN -zpr = (180 - myy) / (y - myy) -y = 180 -x = myx - ((myx - x) * zpr) + zpr = (180 - myy) / (y - myy) + y = 180 + x = myx - ((myx - x) * zpr) END IF lp = SQR(ABS(myx - x) ^ 2 + ABS(myy - y) ^ 2) @@ -274,10 +268,10 @@ yp = y - myy yo = 200 FOR a = 1 TO lp - cx = xp * a / lp + myx - cy = yp * a / lp + myy - yn = myan2 - ((landh(cx, cy) - myz) * 300) / a - IF yn < yo THEN LINE (xl, yn)-(xl + stem, yo - 1), landc(cx, cy), BF: yo = yn + cx = xp * a / lp + myx + cy = yp * a / lp + myy + yn = myan2 - ((landh(cx, cy) - myz) * 300) / a + IF yn < yo THEN LINE (xl, yn)-(xl + stem, yo - 1), landc(cx, cy), BF: yo = yn NEXT a LINE (xl, yo - 1)-(xl + stem, 0), sky, BF @@ -289,7 +283,6 @@ frm = frm + 1 ste = 4 stem = ste - 1 - zmyan = frm / 15 + pi 'myan2 = myan2 + 5 'zmyx = SIN(zmyan) * 3 + zmyx @@ -314,5 +307,4 @@ myz = zmyz myy = zmyy myx = zmyx -END SUB - +END SUB \ No newline at end of file -- 2.20.1