summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMorxemplum <morxemplum+github@gmail.com>2020-07-24 11:59:07 -0700
committerMorxemplum <morxemplum+github@gmail.com>2020-07-24 11:59:07 -0700
commitdaede5d40820d8c6ebfb682c86b2fbbcdbeae40d (patch)
tree0dca18b03cec527479331af949ae9cf661bbfd32
parente5a06a1f1bf163d0ace5ca218998831e910d4906 (diff)
Add an experimental level for negative pulsesnegative_pulses
-rw-r--r--_RELEASE/Packs/experimental/Levels/negative_pulse.json12
-rw-r--r--_RELEASE/Packs/experimental/Scripts/Levels/negative_pulse.lua88
-rw-r--r--_RELEASE/Packs/experimental/Styles/negative_pulse.json34
3 files changed, 134 insertions, 0 deletions
diff --git a/_RELEASE/Packs/experimental/Levels/negative_pulse.json b/_RELEASE/Packs/experimental/Levels/negative_pulse.json
new file mode 100644
index 00000000..d19848ed
--- /dev/null
+++ b/_RELEASE/Packs/experimental/Levels/negative_pulse.json
@@ -0,0 +1,12 @@
+{
+ "id": "negative_pulse",
+ "name": "Negative Pulse",
+ "description": "Another test for negative pulses on styles",
+ "author": "Morxemplum",
+ "menuPriority": 30,
+ "selectable": true,
+ "styleId": "negative_pulse_style",
+ "musicId": "jackRussel",
+ "luaFile": "Scripts/Levels/negative_pulse.lua",
+ "difficultyMults": []
+}
diff --git a/_RELEASE/Packs/experimental/Scripts/Levels/negative_pulse.lua b/_RELEASE/Packs/experimental/Scripts/Levels/negative_pulse.lua
new file mode 100644
index 00000000..cd11022d
--- /dev/null
+++ b/_RELEASE/Packs/experimental/Scripts/Levels/negative_pulse.lua
@@ -0,0 +1,88 @@
+-- include useful files
+u_execScript("utils.lua")
+u_execScript("common.lua")
+u_execScript("commonpatterns.lua")
+
+-- this function adds a pattern to the timeline based on a key
+function addPattern(mKey)
+ if mKey == 0 then pAltBarrage(math.random(2, 4), 2)
+ elseif mKey == 1 then pMirrorSpiral(math.random(3, 6), 0)
+ elseif mKey == 2 then pBarrageSpiral(math.random(0, 3), 1, 1)
+ elseif mKey == 3 then pBarrageSpiral(math.random(0, 2), 1.2, 2)
+ elseif mKey == 4 then pBarrageSpiral(2, 0.7, 1)
+ elseif mKey == 5 then pInverseBarrage(0)
+ elseif mKey == 6 then pTunnel(math.random(1, 3))
+ elseif mKey == 7 then pMirrorWallStrip(1, 0)
+ elseif mKey == 8 then
+ if l_getSides() > 5 then
+ pWallExVortex(0, 1, 1)
+ end
+ elseif mKey == 9 then pDMBarrageSpiral(math.random(4, 7), 0.4, 1)
+ elseif mKey == 10 then pRandomBarrage(math.random(2, 4), 2.25)
+ end
+end
+
+-- shuffle the keys, and then call them to add all the patterns
+-- shuffling is better than randomizing - it guarantees all the patterns will be called
+keys = { 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 7, 7, 8, 9, 10, 10, 10 }
+keys = shuffle(keys)
+index = 0
+
+-- onInit is an hardcoded function that is called when the level is first loaded
+function onInit()
+ l_setSpeedMult(2.65)
+ l_setSpeedInc(0.1)
+ --l_setSpeedMax(3.4)
+ l_setRotationSpeed(0.2)
+ l_setRotationSpeedMax(1)
+ l_setRotationSpeedInc(0.05)
+ l_setDelayMult(1.1)
+ l_setDelayInc(0.005)
+ --l_setDelayMin(1.05)
+ l_setFastSpin(70.0)
+ l_setSides(6)
+ l_setSidesMin(5)
+ l_setSidesMax(7)
+ l_setIncTime(15)
+
+ l_setPulseMin(70)
+ l_setPulseMax(90)
+ l_setPulseSpeed(1.0)
+ l_setPulseSpeedR(0.6)
+ l_setPulseDelayMax(0)
+
+ l_setBeatPulseMax(17)
+ l_setBeatPulseDelayMax(23.8)
+ l_setDarkenUnevenBackgroundChunk(false);
+
+ enableSwapIfDMGreaterThan(1.4)
+ disableIncIfDMGreaterThan(1.4)
+end
+
+-- onLoad is an hardcoded function that is called when the level is started/restarted
+function onLoad()
+end
+
+-- onStep is an hardcoded function that is called when the level timeline is empty
+-- onStep should contain your pattern spawning logic
+function onStep()
+ addPattern(keys[index])
+ index = index + 1
+
+ if index - 1 == #keys then
+ index = 1
+ keys = shuffle(keys)
+ end
+end
+
+-- onIncrement is an hardcoded function that is called when the level difficulty is incremented
+function onIncrement()
+end
+
+-- onUnload is an hardcoded function that is called when the level is closed/restarted
+function onUnload()
+end
+
+-- onUpdate is an hardcoded function that is called every frame
+function onUpdate(mFrameTime)
+end
diff --git a/_RELEASE/Packs/experimental/Styles/negative_pulse.json b/_RELEASE/Packs/experimental/Styles/negative_pulse.json
new file mode 100644
index 00000000..01995a0d
--- /dev/null
+++ b/_RELEASE/Packs/experimental/Styles/negative_pulse.json
@@ -0,0 +1,34 @@
+{
+ // Style data id
+ "id": "negative_pulse_style",
+
+ // Hue options
+ "hue_min": 0,
+ "hue_max": 360,
+ "hue_ping_pong": true,
+ "hue_increment": 1.0,
+
+ // Pulse options
+ "pulse_min": 0.0,
+ "pulse_max": 1,
+ "pulse_increment": 0.025,
+
+ // 3D options
+ "3D_depth": 7,
+ "3D_skew": 0.15,
+ "3D_spacing": 1.5,
+ "3D_darken_multiplier": 1.5,
+ "3D_alpha_multiplier": 0.5,
+ "3D_alpha_falloff": 19.0,
+
+ // Main color
+ "main": { "main": true, "dynamic": false, "value": [0, 0, 255, 255], "pulse": [25, 25, 0, 0] },
+ "cap_color": "main_darkened",
+
+ // Background colors
+ "colors":
+ [
+ { "dynamic": false, "dynamic_offset": false, "dynamic_darkness": 0.0, "value": [0, 255, 0, 255], "pulse": [255, -255, 255, 0]},
+ { "dynamic": false, "dynamic_offset": false, "dynamic_darkness": 0.0, "value": [0, 255, 0, 255], "pulse": [255, -255, 255, 0]}
+ ]
+}