Files
Grinch-AP/worlds/bumpstik/Locations.py
Felix R 36b5b1207c Add Bumper Stickers (#811)
* bumpstik: initial commit

* bumpstik: fix game name in location obj

* bumpstik: specified offset

* bumpstik: forgot to call create_regions

* bumpstik: fix entrance generation

* bumpstik: fix completion definition

* bumpstik: treasure bumper, LttP text

* bumpstik: add more score-based locations

* bumpstik: adjust regions

* bumpstik: fill with Treasure Bumpers

* bumpstik: force Treasure Bumper on last location

* bumpstik: don't require Hazard Bumpers for level 4

* bumpstik: treasure bumper locations

* bumpstik: formatting

* bumpstik: refactor to 0.3.5

* bumpstik: Treasure bumpers are now progression

* bumpstik: complete reimplementation of locations

* bumpstik: implement Nothing as item

* bumpstik: level 3 and 4 locations

* bumpstik: correct a goal value

* bumpstik: region defs need one extra treasure

* bumpstik: add more starting paint cans

* bumpstik: toned down final score goal

* bumpstik: changing items, Hazards no longer traps

* bumpstik: remove item groups

* bumpstik: update self.world to self.multiworld

* bumpstik: clean up item types and classes

* bumpstik: add options
also add traps to item pool

* bumpstik: update docs

* bumpstik: oops

* bumpstik: add to master game list on readme

* bumpstik: renaming Task Skip to Task Advance
because "Task Skip" is surprisingly hard to say

* bumpstik: fill with score on item gen
instead of nothing (nothing is still the default filler)

* bumpstik: add 18 checks

* bumpstik: bump ap ver

* bumpstik: add item groups

* bumpstik: make helper items and traps configurable

* bumpstik: make Hazard Bumper progression

* bumpstik: tone final score goal down to 50K

* bumpstik: 0.4.0 region update

* bumpstik: clean up docs
also final goal is now 50K or your score + 5000, whichever is higher

* bumpstik: take datapackage out of testing mode

* bumpstik: Apply suggestions from code review

code changes for .apworld support

Co-authored-by: Zach Parks <zach@alliware.com>

---------

Co-authored-by: Zach Parks <zach@alliware.com>
2023-06-27 15:37:17 -05:00

50 lines
1.7 KiB
Python

# Copyright (c) 2022 FelicitusNeko
#
# This software is released under the MIT License.
# https://opensource.org/licenses/MIT
from BaseClasses import Location
class BumpStikLocation(Location):
game = "Bumper Stickers"
offset = 595_000
level1_locs = [f"{(i + 1) * 250} Points" for i in range(4)] + \
[f"{(i + 1) * 500} Level Points" for i in range(4)] + \
[f"{(i + 1) * 25} Level Bumpers" for i in range(3)] + \
["Combo 5"]
level2_locs = [f"{(i + 1) * 500} Points" for i in range(4)] + \
[f"{(i + 1) * 1000} Level Points" for i in range(4)] + \
[f"{(i + 1) * 25} Level Bumpers" for i in range(4)] + \
["Combo 5"] + ["Chain x2"]
level3_locs = [f"{(i + 1) * 800} Points" for i in range(4)] + \
[f"{(i + 1) * 2000} Level Points" for i in range(4)] + \
[f"{(i + 1) * 25} Level Bumpers" for i in range(5)] + \
["Combo 5", "Combo 7"] + ["Chain x2"] + \
["All Clear, 3 colors"]
level4_locs = [f"{(i + 1) * 1500} Points" for i in range(4)] + \
[f"{(i + 1) * 3000} Level Points" for i in range(4)] + \
[f"{(i + 1) * 25} Level Bumpers" for i in range(6)] + \
["Combo 5", "Combo 7"] + ["Chain x2", "Chain x3"]
level5_locs = ["50,000+ Total Points", "Cleared all Hazards"]
for x, loc_list in enumerate([level1_locs, level2_locs, level3_locs, level4_locs, level5_locs]):
for y, loc in enumerate(loc_list):
loc_list[y] = f"Level {x + 1} - {loc}"
extra_locs = [f"Bonus Booster {i+1}" for i in range(5)] + \
[f"Treasure Bumper {i+1}" for i in range(32)]
all_locs = level1_locs + level2_locs + level3_locs + level4_locs + level5_locs + extra_locs
location_table = {
loc: offset + i for i, loc in enumerate(all_locs)
}