A Pen by Gregory Potdevin

Size
2,432 Kb
Views
26,312

How do I make an a pen by gregory potdevin?

Forked from Gregory Potdevin's Pen bpxKQM.. What is a a pen by gregory potdevin? How do you make a a pen by gregory potdevin? This script and codes were developed by Gregory Potdevin on 01 October 2022, Saturday.

A Pen by Gregory Potdevin Previews

A Pen by Gregory Potdevin - Script Codes HTML Codes

<!DOCTYPE html>
<html >
<head> <meta charset="UTF-8"> <title>A Pen by Gregory Potdevin</title>
</head>
<body> <button onclick="refresh()">refresh</button>
<pre id="level"></pre> <script src="js/index.js"></script>
</body>
</html>

A Pen by Gregory Potdevin - Script Codes JS Codes

var SIZE = 9
var SCREEN_SCALE = 0.6
var BALL_SPEED = 0.4
var DIFFERENT_OBS = 3 // Max 3 different obstacles
var PATTERNS = [ "circle_giga", "circle", "circle_medium", "circle_mini", "square", "triangle1", "triangle2", "sun", "circle8", "funky_circle8", "step_circle8", "doublecircle", "doublecircle_bigleft", "doublecircle_bigright", "circle_doublecross", "cross_left", "cross_right", "midcross", "spikes", "spikes4", "balls_spiral", "balls_x", "balls_infinity", "line_doubletrio", "sun_spikes1", "sun_spikes2", "spikesstomp", "bw_mini_triangle", "line_trio", "specialcircle1",
]
function randomLevel(){ var level = ""; level += ' // CONTROL XXX\n' level += ' {ballSpeed: ' + BALL_SPEED + ', screenScale: ' + SCREEN_SCALE + ', obstacles:[\n' var gravityAngle = 0 var baseAngle = 0 var obstacles = (new Array(DIFFERENT_OBS)) for(var i=0; i<obstacles.length; i++) obstacles[i] = randomEntry(PATTERNS); var prev = null var prevCnt = 0 // Pick 3 for(var i=0; i<SIZE || gravityAngle != 0; i++){ var pattern; var tries = 5; do { pattern = randomEntry(obstacles); } while((prev == pattern) && (prevCnt >= 2) && tries-->0); if (prev == pattern) prevCnt++; else prevCnt = 1; prev = pattern; var entry = { type: pattern, speed: 1, gravityAngle: gravityAngle, baseAngle: baseAngle, } if (i < SIZE-1){ gravityAngle += Math.random() < 0.5 ? -45 : 45; } else { if (gravityAngle < 0) gravityAngle += 45; else if (gravityAngle > 0) gravityAngle -= 45; } baseAngle = 0 level += ' ' + JSON.stringify(entry) + ',\n' } level += ' ]},'; return level;
}
var el = document.getElementById("level");
el.innerHTML = randomLevel()
function refresh(){ var el = document.getElementById("level"); el.innerHTML = randomLevel()
}
function lerp(ratio, start, end){ return start + ratio * (end - start)
}
function roundDecimals(value){ return Math.round(value * 100) / 100
}
function randomEntry(arr){ return arr[Math.floor(Math.random()*arr.length)]
}
function shuffle(a) { var j, x, i; for (i = a.length; i; i -= 1) { j = Math.floor(Math.random() * i); x = a[i - 1]; a[i - 1] = a[j]; a[j] = x; } return a
}
function randomizeColors(colors){ var newColors = shuffle([1, 2, 3, 4]) return colors.map(function(color){return newColors[color]})
}
A Pen by Gregory Potdevin - Script Codes
A Pen by Gregory Potdevin - Script Codes
Home Page Home
Developer Gregory Potdevin
Username GregoryPotdevin
Uploaded October 01, 2022
Rating 3
Size 2,432 Kb
Views 26,312
Do you need developer help for A Pen by Gregory Potdevin?

Find the perfect freelance services for your business! Fiverr's mission is to change how the world works together. Fiverr connects businesses with freelancers offering digital services in 500+ categories. Find Developer!

Gregory Potdevin (GregoryPotdevin) Script Codes
Create amazing captions with AI!

Jasper is the AI Content Generator that helps you and your team break through creative blocks to create amazing, original content 10X faster. Discover all the ways the Jasper AI Content Platform can help streamline your creative workflows. Start For Free!