|
110 | 110 | "id": "C", |
111 | 111 | "name": "In G-Mode - Can't Use Grapple, Open Door", |
112 | 112 | "obstacleType": "abstract" |
| 113 | + }, |
| 114 | + { |
| 115 | + "id": "R-Mode", |
| 116 | + "name": "R-Mode Entry", |
| 117 | + "obstacleType": "abstract" |
113 | 118 | } |
114 | 119 | ], |
115 | 120 | "enemies": [ |
|
179 | 184 | }, |
180 | 185 | "flashSuitChecked": true |
181 | 186 | }, |
| 187 | + { |
| 188 | + "link": [1, 1], |
| 189 | + "name": "R-Mode Entry", |
| 190 | + "entranceCondition": { |
| 191 | + "comeInWithRMode": {} |
| 192 | + }, |
| 193 | + "requires": [ |
| 194 | + {"enemyDamage": {"enemy": "Sm. Sidehopper", "type": "contact", "hits": 1}} |
| 195 | + ], |
| 196 | + "flashSuitChecked": true, |
| 197 | + "blueSuitChecked": true, |
| 198 | + "clearsObstacles": ["R-Mode"], |
| 199 | + "devNote": [ |
| 200 | + "FIXME: It is possible to avoid a forced Small Sidehopper hit by buffering an aim down as you release X-Ray.", |
| 201 | + "Evading further hits from that position would require more logic." |
| 202 | + ] |
| 203 | + }, |
| 204 | + { |
| 205 | + "link": [1, 1], |
| 206 | + "name": "X-Mode - R-Mode Spark Interrupt (Gain Blue Suit)", |
| 207 | + "requires": [ |
| 208 | + {"obstaclesCleared": ["R-Mode"]}, |
| 209 | + {"obstaclesCleared": ["A"]}, |
| 210 | + {"or": [ |
| 211 | + "h_CrystalFlash", |
| 212 | + {"and": [ |
| 213 | + "h_RModeCanRefillReserves", |
| 214 | + {"resourceMissingAtMost": [{"type": "Missile", "count": 0}]}, |
| 215 | + {"resourceMissingAtMost": [{"type": "Super", "count": 0}]}, |
| 216 | + {"or":[ |
| 217 | + {"and": [ |
| 218 | + "canBePatient", |
| 219 | + {"partialRefill": {"type": "ReserveEnergy", "limit": 5}} |
| 220 | + ]}, |
| 221 | + {"and": [ |
| 222 | + "canBeExtremelyPatient", |
| 223 | + {"partialRefill": {"type": "ReserveEnergy", "limit": 20}} |
| 224 | + ]} |
| 225 | + ]} |
| 226 | + ]} |
| 227 | + ]}, |
| 228 | + "h_destroyBombWalls", |
| 229 | + "canXMode", |
| 230 | + "h_XModeSpikeHit", |
| 231 | + "h_XModeSpikeHit", |
| 232 | + "h_shinechargeMaxRunway", |
| 233 | + "canBeVeryPatient", |
| 234 | + "canPauseAbuse", |
| 235 | + {"autoReserveTrigger": {}}, |
| 236 | + "canRModeSparkInterrupt" |
| 237 | + ], |
| 238 | + "resetsObstacles": ["R-Mode", "C"], |
| 239 | + "flashSuitChecked": true, |
| 240 | + "blueSuitChecked": true, |
| 241 | + "note": [ |
| 242 | + "Kill the hoppers. Use Spike X-Mode to gain shine charge, then use manual reserve and pause abuse on the spikes to", |
| 243 | + "interrupt the shinespark." |
| 244 | + ] |
| 245 | + }, |
182 | 246 | { |
183 | 247 | "id": 78, |
184 | 248 | "link": [1, 1], |
|
614 | 678 | ]} |
615 | 679 | ], |
616 | 680 | "clearsObstacles": ["A"], |
617 | | - "resetsObstacles": ["B", "C"], |
| 681 | + "resetsObstacles": ["B", "C", "R-Mode"], |
618 | 682 | "farmCycleDrops": [ |
619 | 683 | {"enemy": "Sidehopper", "count": 1}, |
620 | 684 | {"enemy": "Sm. Sidehopper", "count": 2} |
|
1346 | 1410 | "bypassesDoorShell": true, |
1347 | 1411 | "flashSuitChecked": true |
1348 | 1412 | }, |
| 1413 | + { |
| 1414 | + "link": [2, 2], |
| 1415 | + "name": "R-Mode Entry", |
| 1416 | + "entranceCondition": { |
| 1417 | + "comeInWithRMode": {} |
| 1418 | + }, |
| 1419 | + "requires": [], |
| 1420 | + "flashSuitChecked": true, |
| 1421 | + "blueSuitChecked": true, |
| 1422 | + "clearsObstacles": ["R-Mode"] |
| 1423 | + }, |
1349 | 1424 | { |
1350 | 1425 | "id": 42, |
1351 | 1426 | "link": [2, 2], |
|
1383 | 1458 | ]} |
1384 | 1459 | ], |
1385 | 1460 | "clearsObstacles": ["A"], |
1386 | | - "resetsObstacles": ["C", "B"], |
| 1461 | + "resetsObstacles": ["C", "B", "R-Mode"], |
1387 | 1462 | "farmCycleDrops": [ |
1388 | 1463 | {"enemy": "Sidehopper", "count": 1}, |
1389 | 1464 | {"enemy": "Sm. Sidehopper", "count": 2} |
|
2148 | 2223 | "canOffScreenMovement", |
2149 | 2224 | "canInsaneJump" |
2150 | 2225 | ], |
| 2226 | + "clearsObstacles": ["R-Mode"], |
2151 | 2227 | "flashSuitChecked": true, |
2152 | 2228 | "note": [ |
2153 | 2229 | "Enter with G-Mode and use X-Ray to get stuck 9 pixels inside the door.", |
|
0 commit comments