about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2026-01-10 07:29:38 -0500
committerStar Rauchenberger <fefferburbia@gmail.com>2026-01-10 07:29:38 -0500
commitf180daef411e2af65a8320c2dd8d58ddbd048d82 (patch)
treed3d313dc86a7c7646c870fafa835008bcb24308b
parent7bd0f7d195641e2ce8786673f260af118d8b212d (diff)
downloadautosplitters-f180daef411e2af65a8320c2dd8d58ddbd048d82.tar.gz
autosplitters-f180daef411e2af65a8320c2dd8d58ddbd048d82.tar.bz2
autosplitters-f180daef411e2af65a8320c2dd8d58ddbd048d82.zip
Added option to track number of falls HEAD main
-rw-r--r--Manifold Garden.asl19
1 files changed, 17 insertions, 2 deletions
diff --git a/Manifold Garden.asl b/Manifold Garden.asl index c2e86c0..daf3d38 100644 --- a/Manifold Garden.asl +++ b/Manifold Garden.asl
@@ -45,7 +45,9 @@ startup {
45 45
46 settings.Add("raymarchitecture", true, "Split on Raymarchitecture (ending cutscene)"); 46 settings.Add("raymarchitecture", true, "Split on Raymarchitecture (ending cutscene)");
47 settings.Add("norepeats",false,"Split only on the first encounter of each level"); 47 settings.Add("norepeats",false,"Split only on the first encounter of each level");
48 settings.Add("gravChanges",false, "Override first text component with a Gravity Changes count"); 48 settings.Add("first_text",false, "Override first text component with (these options are mutually exclusive)");
49 settings.Add("gravChanges",false, "Gravity Changes count", "first_text");
50 settings.Add("numFalls",false, "Number of falls", "first_text");
49 settings.Add("planted",false,"Split when a god cube is planted"); 51 settings.Add("planted",false,"Split when a god cube is planted");
50 settings.Add("every",true,"Split on every level change"); 52 settings.Add("every",true,"Split on every level change");
51 settings.Add("fall",false,"Including all ending falling scenes","every"); 53 settings.Add("fall",false,"Including all ending falling scenes","every");
@@ -161,6 +163,7 @@ init {
161 163
162 var rigidCon = mono.GetClass("RigidbodyController"); 164 var rigidCon = mono.GetClass("RigidbodyController");
163 vars.Helper["gravity"] = gameMan.Make<int>("playerController", rigidCon["_gravityDirection"]); 165 vars.Helper["gravity"] = gameMan.Make<int>("playerController", rigidCon["_gravityDirection"]);
166 vars.Helper["fallDist"] = gameMan.Make<float>("playerController", rigidCon["_DistanceFallen"]);
164 167
165 var mandalaMan = mono.GetClass("MandalaManager"); 168 var mandalaMan = mono.GetClass("MandalaManager");
166 vars.Helper["godCubesPlanted"] = gameMan.MakeList<int>("s_instance", "mandalaManager", mandalaMan["PlacedGodCubes"]); 169 vars.Helper["godCubesPlanted"] = gameMan.MakeList<int>("s_instance", "mandalaManager", mandalaMan["PlacedGodCubes"]);
@@ -188,7 +191,7 @@ init {
188 } 191 }
189 192
190 vars.updateText = false; 193 vars.updateText = false;
191 if (settings["gravChanges"]) { 194 if (settings["first_text"]) {
192 foreach (LiveSplit.UI.Components.IComponent component in timer.Layout.Components) { 195 foreach (LiveSplit.UI.Components.IComponent component in timer.Layout.Components) {
193 if (component.GetType().Name == "TextComponent") { 196 if (component.GetType().Name == "TextComponent") {
194 vars.tc = component; 197 vars.tc = component;
@@ -234,6 +237,7 @@ update {
234 } 237 }
235 if (!current.onMandalaScene) { 238 if (!current.onMandalaScene) {
236 current.gravity = vars.Helper["gravity"].Current; 239 current.gravity = vars.Helper["gravity"].Current;
240 current.fallDist = vars.Helper["fallDist"].Current;
237 } 241 }
238 if (!vars.studioScreenDone) { 242 if (!vars.studioScreenDone) {
239 vars.studioScreenDone = !current.isLoadingGameFromUI; 243 vars.studioScreenDone = !current.isLoadingGameFromUI;
@@ -244,6 +248,12 @@ update {
244 vars.tcs.Text2 = vars.gravChanges.ToString(); 248 vars.tcs.Text2 = vars.gravChanges.ToString();
245 } 249 }
246 } 250 }
251 if (current.fallDist > 0.1 && old.fallDist <= 0.1) {
252 vars.numFalls += 1;
253 if (settings["numFalls"] && vars.updateText) {
254 vars.tcs.Text2 = vars.numFalls.ToString();
255 }
256 }
247 current.godCubesPlanted = vars.Helper["godCubesPlanted"].Current.Count; 257 current.godCubesPlanted = vars.Helper["godCubesPlanted"].Current.Count;
248 } 258 }
249} 259}
@@ -279,6 +289,11 @@ start {
279 vars.tcs.Text1 = "Gravity Changes:"; 289 vars.tcs.Text1 = "Gravity Changes:";
280 vars.tcs.Text2 = "0"; 290 vars.tcs.Text2 = "0";
281 } 291 }
292 vars.numFalls = 0;
293 if (settings["numFalls"] && vars.updateText) {
294 vars.tcs.Text1 = "Falls:";
295 vars.tcs.Text2 = "0";
296 }
282 return true; 297 return true;
283 } 298 }
284} 299}