Skip to content

Commit f48e3bf

Browse files
committed
Merge remote-tracking branch 'upstream/master' into crateria-west-flash-suit
2 parents 35f2501 + e99450b commit f48e3bf

33 files changed

Lines changed: 1063 additions & 459 deletions

helpers.json

Lines changed: 74 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -638,15 +638,40 @@
638638
"canGateGlitch",
639639
{"or": [
640640
{"noFlashSuit": {}},
641-
"h_useSpringBall",
642641
{"and": [
643-
"Morph",
644-
"canInsaneJump",
642+
"h_useSpringBall",
643+
"canComplexCarryFlashSuit"
644+
]},
645+
{"and": [
646+
"canInsaneMidAirMorph",
645647
"canTrickyCarryFlashSuit"
646648
]}
647649
]}
648650
]
649651
},
652+
{
653+
"name": "h_underwaterGateGlitch",
654+
"requires": [
655+
"canGateGlitch",
656+
{"or": [
657+
{"noFlashSuit": {}},
658+
{"and": [
659+
"canComplexCarryFlashSuit",
660+
{"or": [
661+
{"and": [
662+
{"disableEquipment": "Gravity"},
663+
"canMidAirMorph"
664+
]},
665+
"h_useSpringBall"
666+
]}
667+
]},
668+
{"and": [
669+
"canTrickyCarryFlashSuit",
670+
"canInsaneMidAirMorph"
671+
]}
672+
]}
673+
]
674+
},
650675
{
651676
"name": "h_blueGateGlitch",
652677
"requires": [
@@ -666,6 +691,14 @@
666691
"h_greenGateGlitchLeniency"
667692
]
668693
},
694+
{
695+
"name": "h_underwaterGreenGateGlitch",
696+
"requires": [
697+
"h_underwaterGateGlitch",
698+
{"ammo": {"type": "Super", "count": 1}},
699+
"h_greenGateGlitchLeniency"
700+
]
701+
},
669702
{
670703
"name": "h_heatedBlueGateGlitch",
671704
"requires": [
@@ -697,23 +730,51 @@
697730
]
698731
},
699732
{
700-
"name": "h_underwaterCrouchJumpWithFlashSuit",
733+
"name": "h_underwaterCrouchJump",
701734
"requires": [
702735
{"tech": "canCrouchJump"}
703736
],
704737
"devNote": [
705-
"It is possible to crouch jump under water without losing a flash suit.",
706-
"Hold shoot to prevent using a flash suit while still getting the increased height of the crouch jump.",
707-
"Alternatively, it is possible to crouch, jump, then quickly press down to prevent the use of the flash suit."
738+
"Normally the tech 'canCrouchJump' comes with a requirement to not have a flash suit,",
739+
"because a crouch jump would activate a shinespark, consuming the flash suit.",
740+
"However, underwater it is possible to crouch jump without losing a flash suit (by holding shoot or down);",
741+
"therefore this helper circumvents the `noFlashSuit` requirement of `canCrouchJump`.",
742+
"The knowledge of how to crouch jump underwater with a flash suit is part of the `canCarryFlashSuit` tech,",
743+
"which is required as a tech dependency of all methods of gaining a flash suit."
708744
]
709745
},
710746
{
711-
"name": "h_underwaterMaxHeightSpringBallJumpWithFlashSuit",
747+
"name": "h_underwaterMaxHeightSpringBallJump",
712748
"requires": [
713-
"h_underwaterCrouchJumpWithFlashSuit",
749+
"h_underwaterCrouchJump",
714750
"canTrickySpringBallJump"
715751
]
716752
},
753+
{
754+
"name": "h_underwaterCrouchJumpDownGrab",
755+
"requires": [
756+
"h_underwaterCrouchJump",
757+
"canDownGrab"
758+
]
759+
},
760+
{
761+
"name": "h_complexToCarryFlashSuit",
762+
"requires": [
763+
{"or": [
764+
{"noFlashSuit": {}},
765+
"canComplexCarryFlashSuit"
766+
]}
767+
]
768+
},
769+
{
770+
"name": "h_trickyToCarryFlashSuit",
771+
"requires": [
772+
{"or": [
773+
{"noFlashSuit": {}},
774+
"canTrickyCarryFlashSuit"
775+
]}
776+
]
777+
},
717778
{
718779
"name": "h_PlasmaHitbox",
719780
"requires": [
@@ -1081,7 +1142,10 @@
10811142
"requires": [
10821143
{"or": [
10831144
{"noFlashSuit": {}},
1084-
"Morph"
1145+
{"and": [
1146+
"Morph",
1147+
"canComplexCarryFlashSuit"
1148+
]}
10851149
]}
10861150
]
10871151
},

logicalRequirements.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -516,7 +516,7 @@ __Example:__
516516

517517
__Additional considerations__
518518

519-
* A `canShineCharge` object implicitly requires the Speed Booster. Energy requirements for the shinespark (if applicable) are specified separately using a `shinespark` object.
519+
* A `canShineCharge` object implicitly requires the Speed Booster. Energy requirements for the shinespark (if applicable) are specified separately using a `shinespark` object. A `canShineCharge` requirement causes a flash suit to be lost.
520520

521521
#### getBlueSpeed object
522522

region/brinstar/blue/Billy Mays Room.json

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@
7979
"length": 2,
8080
"openEnd": 1
8181
}
82-
}
82+
},
83+
"flashSuitChecked": true
8384
},
8485
{
8586
"id": 2,
@@ -94,25 +95,29 @@
9495
"id": 3,
9596
"link": [1, 2],
9697
"name": "Base",
97-
"requires": []
98+
"requires": [],
99+
"flashSuitChecked": true
98100
},
99101
{
100102
"id": 4,
101103
"link": [2, 1],
102104
"name": "Base",
103-
"requires": []
105+
"requires": [],
106+
"flashSuitChecked": true
104107
},
105108
{
106109
"id": 5,
107110
"link": [2, 3],
108111
"name": "Base",
109-
"requires": []
112+
"requires": [],
113+
"flashSuitChecked": true
110114
},
111115
{
112116
"id": 6,
113117
"link": [3, 2],
114118
"name": "Base",
115-
"requires": []
119+
"requires": [],
120+
"flashSuitChecked": true
116121
}
117122
],
118123
"notables": [],

0 commit comments

Comments
 (0)