diff --git a/Doors.py b/Doors.py index 5c7d10f1..99715027 100644 --- a/Doors.py +++ b/Doors.py @@ -171,10 +171,10 @@ def create_doors(world, player): create_door(player, 'Eastern False Switches WS', Intr).dir(We, 0xd9, Bot, High).pos(1), create_door(player, 'Eastern Cannonball Hell ES', Intr).dir(Ea, 0xd9, Bot, High).pos(1), create_door(player, 'Eastern Cannonball Hell WS', Nrml).dir(We, 0xd9, Bot, High).trap(0x4).pos(0), - create_door(player, 'Eastern Single Eyegore ES', Intr).dir(Ea, 0xd8, Bot, High).pos(2), + create_door(player, 'Eastern Single Eyegore ES', Nrml).dir(Ea, 0xd8, Bot, High).pos(2), create_door(player, 'Eastern Single Eyegore NE', Intr).dir(No, 0xd8, Right, High).pos(1), create_door(player, 'Eastern Duo Eyegores SE', Intr).dir(So, 0xd8, Right, High).pos(1), - create_door(player, 'Eastern Duo Eyegores NE', Intr).dir(No, 0xd8, Right, High).trap(0x4).pos(0), + create_door(player, 'Eastern Duo Eyegores NE', Nrml).dir(No, 0xd8, Right, High).trap(0x4).pos(0), create_door(player, 'Eastern Boss SE', Nrml).dir(So, 0xc8, Right, High).no_exit().trap(0x4).pos(0), # Desert Palace @@ -214,20 +214,20 @@ def create_doors(world, player): create_door(player, 'Desert West Wing WS', Intr).dir(We, 0x83, Bot, High).pos(2), create_door(player, 'Desert West Lobby ES', Intr).dir(Ea, 0x83, Bot, High).pos(2), # Desert Back - create_door(player, 'Desert Back Lobby NW', Intr).dir(Direction.North, 0x63, Left, High).pos(1), - create_door(player, 'Desert Tiles 1 SW', Intr).dir(Direction.South, 0x63, Left, High).pos(1), - create_door(player, 'Desert Tiles 1 Up Stairs', Sprl).dir(Direction.Up, 0x63, 0, HTH).ss(A, 0x1b, 0x6c, True).small_key().pos(0), - create_door(player, 'Desert Bridge Down Stairs', Sprl).dir(Direction.Down, 0x53, 0, HTH).ss(A, 0x0f, 0x80, True), - create_door(player, 'Desert Bridge SW', Intr).dir(Direction.South, 0x53, Left, High).pos(0), - create_door(player, 'Desert Four Statues NW', Intr).dir(Direction.North, 0x53, Left, High).pos(0), - create_door(player, 'Desert Four Statues ES', Intr).dir(Direction.East, 0x53, Bot, High).pos(1), - create_door(player, 'Desert Beamos Hall WS', Intr).dir(Direction.West, 0x53, Bot, High).pos(1), - create_door(player, 'Desert Beamos Hall NE', Nrml).dir(Direction.North, 0x53, Right, High).small_key().pos(2), - create_door(player, 'Desert Tiles 2 SE', Nrml).dir(Direction.South, 0x43, Right, High).small_key().pos(2), - create_door(player, 'Desert Tiles 2 NE', Intr).dir(Direction.North, 0x43, Right, High).small_key().pos(1), - create_door(player, 'Desert Wall Slide SE', Intr).dir(Direction.South, 0x43, Right, High).small_key().pos(1), - create_door(player, 'Desert Wall Slide NW', Nrml).dir(Direction.North, 0x43, Left, High).big_key().pos(0).no_entrance(), - create_door(player, 'Desert Boss SW', Nrml).dir(Direction.South, 0x33, Left, High).no_exit().trap(0x4).pos(0), + create_door(player, 'Desert Back Lobby NW', Intr).dir(No, 0x63, Left, High).pos(1), + create_door(player, 'Desert Tiles 1 SW', Intr).dir(So, 0x63, Left, High).pos(1), + create_door(player, 'Desert Tiles 1 Up Stairs', Sprl).dir(Up, 0x63, 0, HTH).ss(A, 0x1b, 0x6c, True).small_key().pos(0), + create_door(player, 'Desert Bridge Down Stairs', Sprl).dir(Dn, 0x53, 0, HTH).ss(A, 0x0f, 0x80, True), + create_door(player, 'Desert Bridge SW', Intr).dir(So, 0x53, Left, High).pos(0), + create_door(player, 'Desert Four Statues NW', Intr).dir(No, 0x53, Left, High).pos(0), + create_door(player, 'Desert Four Statues ES', Intr).dir(Ea, 0x53, Bot, High).pos(1), + create_door(player, 'Desert Beamos Hall WS', Intr).dir(We, 0x53, Bot, High).pos(1), + create_door(player, 'Desert Beamos Hall NE', Nrml).dir(No, 0x53, Right, High).small_key().pos(2), + create_door(player, 'Desert Tiles 2 SE', Nrml).dir(So, 0x43, Right, High).small_key().pos(2), + create_door(player, 'Desert Tiles 2 NE', Intr).dir(No, 0x43, Right, High).small_key().pos(1), + create_door(player, 'Desert Wall Slide SE', Intr).dir(So, 0x43, Right, High).small_key().pos(1), + create_door(player, 'Desert Wall Slide NW', Nrml).dir(No, 0x43, Left, High).big_key().pos(0).no_entrance(), + create_door(player, 'Desert Boss SW', Nrml).dir(So, 0x33, Left, High).no_exit().trap(0x4).pos(0), # Hera create_door(player, 'Hera Lobby Down Stairs', Sprl).dir(Dn, 0x77, 3, HTL).ss(Z, 0x21, 0x90, False, True), @@ -330,7 +330,7 @@ def create_doors(world, player): create_door(player, 'PoD Arena Main Crystal Path', Lgcl), create_door(player, 'PoD Arena Main Orange Barrier', Lgcl), create_door(player, 'PoD Arena North Drop Down', Lgcl), - create_door(player, 'PoD Arena Crystals E', Nrml).dir(Direction.East, 0x2a, Mid, High).pos(3), + create_door(player, 'PoD Arena Crystals E', Nrml).dir(Ea, 0x2a, Mid, High).pos(3), create_door(player, 'PoD Arena Crystal Path', Lgcl), create_door(player, 'PoD Arena Bridge Drop Down', Lgcl), create_door(player, 'PoD Arena Ledge ES', Nrml).dir(Ea, 0x2a, Bot, High).pos(2), @@ -347,24 +347,24 @@ def create_doors(world, player): create_door(player, 'PoD Jelly Hall NE', Intr).dir(No, 0x4b, Right, High).pos(2), create_door(player, 'PoD Warp Hint SE', Intr).dir(So, 0x4b, Right, High).pos(2), create_door(player, 'PoD Warp Hint Warp', Warp), - create_door(player, 'PoD Falling Bridge SW', Nrml).dir(Direction.South, 0x1a, Left, High).small_key().pos(3), - create_door(player, 'PoD Falling Bridge WN', Nrml).dir(Direction.West, 0x1a, Top, High).small_key().pos(1), - create_door(player, 'PoD Falling Bridge EN', Intr).dir(Direction.East, 0x1a, Top, High).pos(4), - create_door(player, 'PoD Big Chest Balcony W', Nrml).dir(Direction.West, 0x1a, Mid, High).pos(2), - create_door(player, 'PoD Dark Maze EN', Nrml).dir(Direction.East, 0x19, Top, High).small_key().pos(1), - create_door(player, 'PoD Dark Maze E', Nrml).dir(Direction.East, 0x19, Mid, High).pos(0), - create_door(player, 'PoD Compass Room WN', Intr).dir(Direction.West, 0x1a, Top, High).pos(4), - create_door(player, 'PoD Compass Room SE', Intr).dir(Direction.North, 0x1a, Mid, High).small_key().pos(0), - create_door(player, 'PoD Harmless Hellway NE', Intr).dir(Direction.North, 0x1a, Right, High).small_key().pos(0), - create_door(player, 'PoD Harmless Hellway SE', Nrml).dir(Direction.South, 0x1a, Right, High).pos(5), - create_door(player, 'PoD Compass Room W Down Stairs', Sprl).dir(Direction.Down, 0x1a, 0, HTH).ss(S, 0x12, 0x50, True, True), - create_door(player, 'PoD Compass Room E Down Stairs', Sprl).dir(Direction.Down, 0x1a, 1, HTH).ss(S, 0x11, 0xb0, True, True), - create_door(player, 'PoD Dark Basement W Up Stairs', Sprl).dir(Direction.Up, 0x6a, 0, HTH).ss(S, 0x1b, 0x3c, True), - create_door(player, 'PoD Dark Basement E Up Stairs', Sprl).dir(Direction.Up, 0x6a, 1, HTH).ss(S, 0x1b, 0x9c, True), - create_door(player, 'PoD Dark Alley NE', Nrml).dir(Direction.North, 0x6a, Right, High).big_key().pos(0), - create_door(player, 'PoD Mimics 2 SW', Nrml).dir(Direction.South, 0x1b, Left, High).pos(1), - create_door(player, 'PoD Mimics 2 NW', Intr).dir(Direction.North, 0x1b, Left, High).pos(0), - create_door(player, 'PoD Bow Statue SW', Intr).dir(Direction.South, 0x1b, Left, High).pos(0), + create_door(player, 'PoD Falling Bridge SW', Nrml).dir(So, 0x1a, Left, High).small_key().pos(3), + create_door(player, 'PoD Falling Bridge WN', Nrml).dir(We, 0x1a, Top, High).small_key().pos(1), + create_door(player, 'PoD Falling Bridge EN', Intr).dir(Ea, 0x1a, Top, High).pos(4), + create_door(player, 'PoD Big Chest Balcony W', Nrml).dir(We, 0x1a, Mid, High).pos(2), + create_door(player, 'PoD Dark Maze EN', Nrml).dir(Ea, 0x19, Top, High).small_key().pos(1), + create_door(player, 'PoD Dark Maze E', Nrml).dir(Ea, 0x19, Mid, High).pos(0), + create_door(player, 'PoD Compass Room WN', Intr).dir(We, 0x1a, Top, High).pos(4), + create_door(player, 'PoD Compass Room SE', Intr).dir(No, 0x1a, Mid, High).small_key().pos(0), + create_door(player, 'PoD Harmless Hellway NE', Intr).dir(No, 0x1a, Right, High).small_key().pos(0), + create_door(player, 'PoD Harmless Hellway SE', Nrml).dir(So, 0x1a, Right, High).pos(5), + create_door(player, 'PoD Compass Room W Down Stairs', Sprl).dir(Dn, 0x1a, 0, HTH).ss(S, 0x12, 0x50, True, True), + create_door(player, 'PoD Compass Room E Down Stairs', Sprl).dir(Dn, 0x1a, 1, HTH).ss(S, 0x11, 0xb0, True, True), + create_door(player, 'PoD Dark Basement W Up Stairs', Sprl).dir(Up, 0x6a, 0, HTH).ss(S, 0x1b, 0x3c, True), + create_door(player, 'PoD Dark Basement E Up Stairs', Sprl).dir(Up, 0x6a, 1, HTH).ss(S, 0x1b, 0x9c, True), + create_door(player, 'PoD Dark Alley NE', Nrml).dir(No, 0x6a, Right, High).big_key().pos(0), + create_door(player, 'PoD Mimics 2 SW', Nrml).dir(So, 0x1b, Left, High).pos(1), + create_door(player, 'PoD Mimics 2 NW', Intr).dir(No, 0x1b, Left, High).pos(0), + create_door(player, 'PoD Bow Statue SW', Intr).dir(So, 0x1b, Left, High).pos(0), create_door(player, 'PoD Bow Statue Down Ladder', Lddr).no_entrance(), create_door(player, 'PoD Dark Pegs Up Ladder', Lddr), create_door(player, 'PoD Dark Pegs WN', Intr).dir(We, 0x0b, Mid, High).small_key().pos(2), @@ -525,87 +525,87 @@ def create_doors(world, player): create_door(player, 'Skull Final Drop ES', Intr).dir(Ea, 0x39, Bot, High).small_key().pos(1), create_door(player, 'Skull Final Drop Hole', Hole), - create_door(player, 'Thieves Lobby N Edge', Open).dir(Direction.North, 0xdb, None, Low), - create_door(player, 'Thieves Lobby NE Edge', Open).dir(Direction.North, 0xdb, None, Low), - create_door(player, 'Thieves Lobby E', Nrml).dir(Direction.East, 0xdb, Mid, High).no_exit().trap(0x4).pos(0), - create_door(player, 'Thieves Big Chest Nook WS Edge', Open).dir(Direction.West, 0xdb, None, Low), - create_door(player, 'Thieves Ambush S Edge', Open).dir(Direction.South, 0xcb, None, Low), - create_door(player, 'Thieves Ambush SE Edge', Open).dir(Direction.South, 0xcb, None, Low), - create_door(player, 'Thieves Ambush ES Edge', Open).dir(Direction.East, 0xcb, None, Low), - create_door(player, 'Thieves Ambush EN Edge', Open).dir(Direction.East, 0xcb, None, Low), - create_door(player, 'Thieves Ambush E', Nrml).dir(Direction.East, 0xcb, Mid, High).pos(0), - create_door(player, 'Thieves BK Corner WN Edge', Open).dir(Direction.West, 0xcc, None, Low), - create_door(player, 'Thieves BK Corner WS Edge', Open).dir(Direction.West, 0xcc, None, Low), - create_door(player, 'Thieves BK Corner S Edge', Open).dir(Direction.South, 0xcc, None, Low), - create_door(player, 'Thieves BK Corner SW Edge', Open).dir(Direction.South, 0xcc, None, Low), - create_door(player, 'Thieves BK Corner W', Nrml).dir(Direction.West, 0xcc, Mid, High).pos(2), - create_door(player, 'Thieves BK Corner NW', Nrml).dir(Direction.North, 0xcc, Left, High).pos(1), - create_door(player, 'Thieves BK Corner NE', Nrml).dir(Direction.North, 0xcc, Right, High).big_key().pos(0), - create_door(player, 'Thieves Compass Room NW Edge', Open).dir(Direction.North, 0xdc, None, Low), - create_door(player, 'Thieves Compass Room N Edge', Open).dir(Direction.North, 0xdc, None, Low), - create_door(player, 'Thieves Compass Room WS Edge', Open).dir(Direction.West, 0xdc, None, Low), - create_door(player, 'Thieves Compass Room W', Nrml).dir(Direction.West, 0xdc, Mid, High).pos(0), - create_door(player, 'Thieves Hallway SE', Nrml).dir(Direction.South, 0xbc, Right, High).small_key().pos(1), - create_door(player, 'Thieves Hallway NE', Nrml).dir(Direction.North, 0xbc, Right, High).pos(7), - create_door(player, 'Thieves Pot Alcove Mid WS', Nrml).dir(Direction.West, 0xbc, Bot, High).pos(5), - create_door(player, 'Thieves Pot Alcove Bottom SW', Nrml).dir(Direction.South, 0xbc, Left, High).pos(3), - create_door(player, 'Thieves Conveyor Maze WN', Nrml).dir(Direction.West, 0xbc, Top, High).pos(4), - create_door(player, 'Thieves Hallway WS', Intr).dir(Direction.West, 0xbc, Bot, High).small_key().pos(0), - create_door(player, 'Thieves Pot Alcove Mid ES', Intr).dir(Direction.East, 0xbc, Bot, High).small_key().pos(0), - create_door(player, 'Thieves Conveyor Maze SW', Intr).dir(Direction.South, 0xbc, Left, High).pos(6), - create_door(player, 'Thieves Pot Alcove Top NW', Intr).dir(Direction.North, 0xbc, Left, High).pos(6), - create_door(player, 'Thieves Conveyor Maze EN', Intr).dir(Direction.East, 0xbc, Top, High).pos(2), - create_door(player, 'Thieves Hallway WN', Intr).dir(Direction.West, 0xbc, Top, High).no_exit().pos(2), - create_door(player, 'Thieves Conveyor Maze Down Stairs', Sprl).dir(Direction.Down, 0xbc, 0, HTH).ss(A, 0x11, 0x80, True, True), - create_door(player, 'Thieves Boss SE', Nrml).dir(Direction.South, 0xac, Right, High).no_exit().trap(0x4).pos(0), - create_door(player, 'Thieves Spike Track ES', Nrml).dir(Direction.East, 0xbb, Bot, High).pos(5), - create_door(player, 'Thieves Hellway NW', Nrml).dir(Direction.North, 0xbb, Left, High).pos(0), - create_door(player, 'Thieves Triple Bypass EN', Nrml).dir(Direction.East, 0xbb, Top, High).pos(4), + create_door(player, 'Thieves Lobby N Edge', Open).dir(No, 0xdb, None, Low), + create_door(player, 'Thieves Lobby NE Edge', Open).dir(No, 0xdb, None, Low), + create_door(player, 'Thieves Lobby E', Nrml).dir(Ea, 0xdb, Mid, High).no_exit().trap(0x4).pos(0), + create_door(player, 'Thieves Big Chest Nook WS Edge', Open).dir(We, 0xdb, None, Low), + create_door(player, 'Thieves Ambush S Edge', Open).dir(So, 0xcb, None, Low), + create_door(player, 'Thieves Ambush SE Edge', Open).dir(So, 0xcb, None, Low), + create_door(player, 'Thieves Ambush ES Edge', Open).dir(Ea, 0xcb, None, Low), + create_door(player, 'Thieves Ambush EN Edge', Open).dir(Ea, 0xcb, None, Low), + create_door(player, 'Thieves Ambush E', Nrml).dir(Ea, 0xcb, Mid, High).pos(0), + create_door(player, 'Thieves BK Corner WN Edge', Open).dir(We, 0xcc, None, Low), + create_door(player, 'Thieves BK Corner WS Edge', Open).dir(We, 0xcc, None, Low), + create_door(player, 'Thieves BK Corner S Edge', Open).dir(So, 0xcc, None, Low), + create_door(player, 'Thieves BK Corner SW Edge', Open).dir(So, 0xcc, None, Low), + create_door(player, 'Thieves BK Corner W', Nrml).dir(We, 0xcc, Mid, High).pos(2), + create_door(player, 'Thieves BK Corner NW', Nrml).dir(No, 0xcc, Left, High).pos(1), + create_door(player, 'Thieves BK Corner NE', Nrml).dir(No, 0xcc, Right, High).big_key().pos(0), + create_door(player, 'Thieves Compass Room NW Edge', Open).dir(No, 0xdc, None, Low), + create_door(player, 'Thieves Compass Room N Edge', Open).dir(No, 0xdc, None, Low), + create_door(player, 'Thieves Compass Room WS Edge', Open).dir(We, 0xdc, None, Low), + create_door(player, 'Thieves Compass Room W', Nrml).dir(We, 0xdc, Mid, High).pos(0), + create_door(player, 'Thieves Hallway SE', Nrml).dir(So, 0xbc, Right, High).small_key().pos(1), + create_door(player, 'Thieves Hallway NE', Nrml).dir(No, 0xbc, Right, High).pos(7), + create_door(player, 'Thieves Pot Alcove Mid WS', Nrml).dir(We, 0xbc, Bot, High).pos(5), + create_door(player, 'Thieves Pot Alcove Bottom SW', Nrml).dir(So, 0xbc, Left, High).pos(3), + create_door(player, 'Thieves Conveyor Maze WN', Nrml).dir(We, 0xbc, Top, High).pos(4), + create_door(player, 'Thieves Hallway WS', Intr).dir(We, 0xbc, Bot, High).small_key().pos(0), + create_door(player, 'Thieves Pot Alcove Mid ES', Intr).dir(Ea, 0xbc, Bot, High).small_key().pos(0), + create_door(player, 'Thieves Conveyor Maze SW', Intr).dir(So, 0xbc, Left, High).pos(6), + create_door(player, 'Thieves Pot Alcove Top NW', Intr).dir(No, 0xbc, Left, High).pos(6), + create_door(player, 'Thieves Conveyor Maze EN', Intr).dir(Ea, 0xbc, Top, High).pos(2), + create_door(player, 'Thieves Hallway WN', Intr).dir(We, 0xbc, Top, High).no_exit().pos(2), + create_door(player, 'Thieves Conveyor Maze Down Stairs', Sprl).dir(Dn, 0xbc, 0, HTH).ss(A, 0x11, 0x80, True, True), + create_door(player, 'Thieves Boss SE', Nrml).dir(So, 0xac, Right, High).no_exit().trap(0x4).pos(0), + create_door(player, 'Thieves Spike Track ES', Nrml).dir(Ea, 0xbb, Bot, High).pos(5), + create_door(player, 'Thieves Hellway NW', Nrml).dir(No, 0xbb, Left, High).pos(0), + create_door(player, 'Thieves Triple Bypass EN', Nrml).dir(Ea, 0xbb, Top, High).pos(4), create_door(player, 'Thieves Hellway Orange Barrier', Lgcl), create_door(player, 'Thieves Hellway Crystal Orange Barrier', Lgcl), create_door(player, 'Thieves Hellway Blue Barrier', Lgcl), create_door(player, 'Thieves Hellway Crystal Blue Barrier', Lgcl), - create_door(player, 'Thieves Spike Track WS', Intr).dir(Direction.West, 0xbb, Bot, High).pos(2), - create_door(player, 'Thieves Hellway Crystal ES', Intr).dir(Direction.East, 0xbb, Bot, High).pos(2), - create_door(player, 'Thieves Spike Track NE', Intr).dir(Direction.North, 0xbb, Right, High).pos(3), - create_door(player, 'Thieves Triple Bypass SE', Intr).dir(Direction.South, 0xbb, Right, High).pos(3), - create_door(player, 'Thieves Hellway Crystal EN', Intr).dir(Direction.East, 0xbb, Top, High).pos(1), - create_door(player, 'Thieves Triple Bypass WN', Intr).dir(Direction.West, 0xbb, Top, High).pos(1), - create_door(player, 'Thieves Spike Switch SW', Nrml).dir(Direction.South, 0xab, Left, High).pos(1), - create_door(player, 'Thieves Spike Switch Up Stairs', Sprl).dir(Direction.Up, 0xab, 0, HTH).ss(Z, 0x1a, 0x6c, True, True).small_key().pos(0), - create_door(player, 'Thieves Attic Down Stairs', Sprl).dir(Direction.Down, 0x64, 0, HTH).ss(Z, 0x11, 0x80, True, True), - create_door(player, 'Thieves Attic ES', Intr).dir(Direction.East, 0x64, Bot, High).pos(0), - create_door(player, 'Thieves Cricket Hall Left WS', Intr).dir(Direction.West, 0x64, Bot, High).pos(0), - create_door(player, 'Thieves Cricket Hall Left Edge', Open).dir(Direction.East, 0x64, None, High), - create_door(player, 'Thieves Cricket Hall Right Edge', Open).dir(Direction.West, 0x65, None, High), - create_door(player, 'Thieves Cricket Hall Right ES', Intr).dir(Direction.East, 0x65, Bot, High).pos(0), - create_door(player, 'Thieves Attic Window WS', Intr).dir(Direction.West, 0x65, Bot, High).pos(0), - create_door(player, 'Thieves Basement Block Up Stairs', Sprl).dir(Direction.Up, 0x45, 0, HTH).ss(A, 0x1a, 0x6c, True, True), - create_door(player, 'Thieves Basement Block WN', Nrml).dir(Direction.West, 0x45, Top, High).trap(0x4).pos(0), + create_door(player, 'Thieves Spike Track WS', Intr).dir(We, 0xbb, Bot, High).pos(2), + create_door(player, 'Thieves Hellway Crystal ES', Intr).dir(Ea, 0xbb, Bot, High).pos(2), + create_door(player, 'Thieves Spike Track NE', Intr).dir(No, 0xbb, Right, High).pos(3), + create_door(player, 'Thieves Triple Bypass SE', Intr).dir(So, 0xbb, Right, High).pos(3), + create_door(player, 'Thieves Hellway Crystal EN', Intr).dir(Ea, 0xbb, Top, High).pos(1), + create_door(player, 'Thieves Triple Bypass WN', Intr).dir(We, 0xbb, Top, High).pos(1), + create_door(player, 'Thieves Spike Switch SW', Nrml).dir(So, 0xab, Left, High).pos(1), + create_door(player, 'Thieves Spike Switch Up Stairs', Sprl).dir(Up, 0xab, 0, HTH).ss(Z, 0x1a, 0x6c, True, True).small_key().pos(0), + create_door(player, 'Thieves Attic Down Stairs', Sprl).dir(Dn, 0x64, 0, HTH).ss(Z, 0x11, 0x80, True, True), + create_door(player, 'Thieves Attic ES', Intr).dir(Ea, 0x64, Bot, High).pos(0), + create_door(player, 'Thieves Cricket Hall Left WS', Intr).dir(We, 0x64, Bot, High).pos(0), + create_door(player, 'Thieves Cricket Hall Left Edge', Open).dir(Ea, 0x64, None, High), + create_door(player, 'Thieves Cricket Hall Right Edge', Open).dir(We, 0x65, None, High), + create_door(player, 'Thieves Cricket Hall Right ES', Intr).dir(Ea, 0x65, Bot, High).pos(0), + create_door(player, 'Thieves Attic Window WS', Intr).dir(We, 0x65, Bot, High).pos(0), + create_door(player, 'Thieves Basement Block Up Stairs', Sprl).dir(Up, 0x45, 0, HTH).ss(A, 0x1a, 0x6c, True, True), + create_door(player, 'Thieves Basement Block WN', Nrml).dir(We, 0x45, Top, High).trap(0x4).pos(0), create_door(player, 'Thieves Basement Block Path', Lgcl), create_door(player, 'Thieves Blocked Entry Path', Lgcl), - create_door(player, 'Thieves Lonely Zazak WS', Nrml).dir(Direction.West, 0x45, Bot, High).pos(2), - create_door(player, 'Thieves Blocked Entry SW', Intr).dir(Direction.South, 0x45, Left, High).pos(1), - create_door(player, 'Thieves Lonely Zazak NW', Intr).dir(Direction.North, 0x45, Left, High).pos(1), - create_door(player, 'Thieves Lonely Zazak ES', Intr).dir(Direction.East, 0x45, Right, High).pos(3), - create_door(player, 'Thieves Blind\'s Cell WS', Intr).dir(Direction.West, 0x45, Right, High).pos(3), - create_door(player, 'Thieves Conveyor Bridge EN', Nrml).dir(Direction.East, 0x44, Top, High).pos(2), - create_door(player, 'Thieves Conveyor Bridge ES', Nrml).dir(Direction.East, 0x44, Bot, High).pos(3), + create_door(player, 'Thieves Lonely Zazak WS', Nrml).dir(We, 0x45, Bot, High).pos(2), + create_door(player, 'Thieves Blocked Entry SW', Intr).dir(So, 0x45, Left, High).pos(1), + create_door(player, 'Thieves Lonely Zazak NW', Intr).dir(No, 0x45, Left, High).pos(1), + create_door(player, 'Thieves Lonely Zazak ES', Intr).dir(Ea, 0x45, Right, High).pos(3), + create_door(player, 'Thieves Blind\'s Cell WS', Intr).dir(We, 0x45, Right, High).pos(3), + create_door(player, 'Thieves Conveyor Bridge EN', Nrml).dir(Ea, 0x44, Top, High).pos(2), + create_door(player, 'Thieves Conveyor Bridge ES', Nrml).dir(Ea, 0x44, Bot, High).pos(3), create_door(player, 'Thieves Conveyor Bridge Block Path', Lgcl), create_door(player, 'Thieves Conveyor Block Path', Lgcl), - create_door(player, 'Thieves Conveyor Bridge WS', Intr).dir(Direction.West, 0x44, Bot, High).small_key().pos(1), - create_door(player, 'Thieves Big Chest Room ES', Intr).dir(Direction.East, 0x44, Bot, High).small_key().pos(1), - create_door(player, 'Thieves Conveyor Block WN', Intr).dir(Direction.West, 0x44, Top, High).pos(0), - create_door(player, 'Thieves Trap EN', Intr).dir(Direction.East, 0x44, Left, Top).pos(0), + create_door(player, 'Thieves Conveyor Bridge WS', Intr).dir(We, 0x44, Bot, High).small_key().pos(1), + create_door(player, 'Thieves Big Chest Room ES', Intr).dir(Ea, 0x44, Bot, High).small_key().pos(1), + create_door(player, 'Thieves Conveyor Block WN', Intr).dir(We, 0x44, Top, High).pos(0), + create_door(player, 'Thieves Trap EN', Intr).dir(Ea, 0x44, Left, Top).pos(0), - create_door(player, 'Ice Lobby WS', Intr).dir(Direction.West, 0x0e, Bot, High).pos(1), - create_door(player, 'Ice Jelly Key ES', Intr).dir(Direction.East, 0x0e, Bot, High).pos(1), - create_door(player, 'Ice Jelly Key Down Stairs', Sprl).dir(Direction.Down, 0x0e, 0, HTH).ss(X, 0x11, 0x80, True, True).small_key().pos(0), - create_door(player, 'Ice Floor Switch Up Stairs', Sprl).dir(Direction.Up, 0x1e, 0, HTH).ss(X, 0x1a, 0x6c, True, True), - create_door(player, 'Ice Floor Switch ES', Intr).dir(Direction.East, 0x1e, Bot, High).pos(1), - create_door(player, 'Ice Cross Left WS', Intr).dir(Direction.West, 0x1e, Bot, High).pos(1), - create_door(player, 'Ice Cross Top NE', Intr).dir(Direction.North, 0x1e, Right, High).pos(2), - create_door(player, 'Ice Bomb Drop SE', Intr).dir(Direction.South, 0x1e, Right, High).pos(2), + create_door(player, 'Ice Lobby WS', Intr).dir(We, 0x0e, Bot, High).pos(1), + create_door(player, 'Ice Jelly Key ES', Intr).dir(Ea, 0x0e, Bot, High).pos(1), + create_door(player, 'Ice Jelly Key Down Stairs', Sprl).dir(Dn, 0x0e, 0, HTH).ss(X, 0x11, 0x80, True, True).small_key().pos(0), + create_door(player, 'Ice Floor Switch Up Stairs', Sprl).dir(Up, 0x1e, 0, HTH).ss(X, 0x1a, 0x6c, True, True), + create_door(player, 'Ice Floor Switch ES', Intr).dir(Ea, 0x1e, Bot, High).pos(1), + create_door(player, 'Ice Cross Left WS', Intr).dir(We, 0x1e, Bot, High).pos(1), + create_door(player, 'Ice Cross Top NE', Intr).dir(No, 0x1e, Right, High).pos(2), + create_door(player, 'Ice Bomb Drop SE', Intr).dir(So, 0x1e, Right, High).pos(2), create_door(player, 'Ice Cross Left Push Block', Lgcl), # dynamic create_door(player, 'Ice Cross Bottom Push Block Left', Lgcl), create_door(player, 'Ice Cross Bottom Push Block Right', Lgcl), # dynamic @@ -613,91 +613,91 @@ def create_doors(world, player): create_door(player, 'Ice Cross Right Push Block Bottom', Lgcl), # dynamic create_door(player, 'Ice Cross Top Push Block Left', Lgcl), create_door(player, 'Ice Cross Top Push Block Right', Lgcl), # dynamic - create_door(player, 'Ice Cross Bottom SE', Nrml).dir(Direction.South, 0x1e, Right, High).pos(3), - create_door(player, 'Ice Cross Right ES', Nrml).dir(Direction.East, 0x1e, Bot, High).pos(0), + create_door(player, 'Ice Cross Bottom SE', Nrml).dir(So, 0x1e, Right, High).pos(3), + create_door(player, 'Ice Cross Right ES', Nrml).dir(Ea, 0x1e, Bot, High).pos(0), create_door(player, 'Ice Bomb Drop Hole', Hole), - create_door(player, 'Ice Compass Room NE', Nrml).dir(Direction.North, 0x2e, Right, High).pos(0), - create_door(player, 'Ice Pengator Switch WS', Nrml).dir(Direction.West, 0x1f, Bot, High).pos(0), - create_door(player, 'Ice Pengator Switch ES', Intr).dir(Direction.East, 0x1f, Bot, High).pos(1), - create_door(player, 'Ice Dead End WS', Intr).dir(Direction.West, 0x1f, Bot, High).pos(1), + create_door(player, 'Ice Compass Room NE', Nrml).dir(No, 0x2e, Right, High).pos(0), + create_door(player, 'Ice Pengator Switch WS', Nrml).dir(We, 0x1f, Bot, High).pos(0), + create_door(player, 'Ice Pengator Switch ES', Intr).dir(Ea, 0x1f, Bot, High).pos(1), + create_door(player, 'Ice Dead End WS', Intr).dir(We, 0x1f, Bot, High).pos(1), create_door(player, 'Ice Big Key Push Block', Lgcl), create_door(player, 'Ice Big Key Down Ladder', Lddr), - create_door(player, 'Ice Stalfos Hint SE', Intr).dir(Direction.South, 0x3e, Right, High).pos(0), - create_door(player, 'Ice Conveyor NE', Intr).dir(Direction.North, 0x3e, Right, High).no_exit().pos(0), - create_door(player, 'Ice Conveyor SW', Nrml).dir(Direction.South, 0x3e, Left, High).small_key().pos(1), - create_door(player, 'Ice Bomb Jump NW', Nrml).dir(Direction.North, 0x4e, Left, High).small_key().pos(1), + create_door(player, 'Ice Stalfos Hint SE', Intr).dir(So, 0x3e, Right, High).pos(0), + create_door(player, 'Ice Conveyor NE', Intr).dir(No, 0x3e, Right, High).no_exit().pos(0), + create_door(player, 'Ice Conveyor SW', Nrml).dir(So, 0x3e, Left, High).small_key().pos(1), + create_door(player, 'Ice Bomb Jump NW', Nrml).dir(No, 0x4e, Left, High).small_key().pos(1), create_door(player, 'Ice Bomb Jump Ledge Orange Barrier', Lgcl), create_door(player, 'Ice Bomb Jump Catwalk Orange Barrier', Lgcl), - create_door(player, 'Ice Bomb Jump EN', Intr).dir(Direction.East, 0x4e, Top, High).pos(0), - create_door(player, 'Ice Narrow Corridor WN', Intr).dir(Direction.West, 0x4e, Top, High).pos(0), - create_door(player, 'Ice Narrow Corridor Down Stairs', Sprl).dir(Direction.Down, 0x4e, 0, HTH).ss(S, 0x52, 0xc0, True, True), - create_door(player, 'Ice Pengator Trap Up Stairs', Sprl).dir(Direction.Up, 0x6e, 0, HTH).ss(S, 0x5a, 0xac, True, True), - create_door(player, 'Ice Pengator Trap NE', Nrml).dir(Direction.North, 0x6e, Right, High).pos(0), - create_door(player, 'Ice Spike Cross SE', Nrml).dir(Direction.South, 0x5e, Right, High).pos(2), - create_door(player, 'Ice Spike Cross ES', Nrml).dir(Direction.East, 0x5e, Bot, High).small_key().pos(0), - create_door(player, 'Ice Spike Cross WS', Intr).dir(Direction.West, 0x5e, Bot, High).pos(3), - create_door(player, 'Ice Firebar ES', Intr).dir(Direction.East, 0x5e, Bot, High).pos(3), + create_door(player, 'Ice Bomb Jump EN', Intr).dir(Ea, 0x4e, Top, High).pos(0), + create_door(player, 'Ice Narrow Corridor WN', Intr).dir(We, 0x4e, Top, High).pos(0), + create_door(player, 'Ice Narrow Corridor Down Stairs', Sprl).dir(Dn, 0x4e, 0, HTH).ss(S, 0x52, 0xc0, True, True), + create_door(player, 'Ice Pengator Trap Up Stairs', Sprl).dir(Up, 0x6e, 0, HTH).ss(S, 0x5a, 0xac, True, True), + create_door(player, 'Ice Pengator Trap NE', Nrml).dir(No, 0x6e, Right, High).pos(0), + create_door(player, 'Ice Spike Cross SE', Nrml).dir(So, 0x5e, Right, High).pos(2), + create_door(player, 'Ice Spike Cross ES', Nrml).dir(Ea, 0x5e, Bot, High).small_key().pos(0), + create_door(player, 'Ice Spike Cross WS', Intr).dir(We, 0x5e, Bot, High).pos(3), + create_door(player, 'Ice Firebar ES', Intr).dir(Ea, 0x5e, Bot, High).pos(3), create_door(player, 'Ice Firebar Down Ladder', Lddr), - create_door(player, 'Ice Spike Cross NE', Intr).dir(Direction.North, 0x5e, Right, High).pos(1), - create_door(player, 'Ice Falling Square SE', Intr).dir(Direction.South, 0x5e, Right, High).pos(1), + create_door(player, 'Ice Spike Cross NE', Intr).dir(No, 0x5e, Right, High).pos(1), + create_door(player, 'Ice Falling Square SE', Intr).dir(So, 0x5e, Right, High).pos(1), create_door(player, 'Ice Falling Square Hole', Hole), - create_door(player, 'Ice Spike Room WS', Nrml).dir(Direction.West, 0x5f, Bot, High).small_key().pos(0), - create_door(player, 'Ice Spike Room Up Stairs', Sprl).dir(Direction.Up, 0x5f, 4, HTH).ss(Z, 0x11, 0x48, True, True), - create_door(player, 'Ice Spike Room Down Stairs', Sprl).dir(Direction.Down, 0x5f, 3, HTH).ss(Z, 0x1a, 0xa4, True, True), - create_door(player, 'Ice Hammer Block Down Stairs', Sprl).dir(Direction.Down, 0x3f, 0, HTH).ss(Z, 0x11, 0xb8, True, True), - create_door(player, 'Ice Hammer Block ES', Intr).dir(Direction.East, 0x3f, Bot, High).pos(0), - create_door(player, 'Ice Tongue Pull WS', Intr).dir(Direction.West, 0x3f, Bot, High).pos(0), + create_door(player, 'Ice Spike Room WS', Nrml).dir(We, 0x5f, Bot, High).small_key().pos(0), + create_door(player, 'Ice Spike Room Up Stairs', Sprl).dir(Up, 0x5f, 4, HTH).ss(Z, 0x11, 0x48, True, True), + create_door(player, 'Ice Spike Room Down Stairs', Sprl).dir(Dn, 0x5f, 3, HTH).ss(Z, 0x1a, 0xa4, True, True), + create_door(player, 'Ice Hammer Block Down Stairs', Sprl).dir(Dn, 0x3f, 0, HTH).ss(Z, 0x11, 0xb8, True, True), + create_door(player, 'Ice Hammer Block ES', Intr).dir(Ea, 0x3f, Bot, High).pos(0), + create_door(player, 'Ice Tongue Pull WS', Intr).dir(We, 0x3f, Bot, High).pos(0), create_door(player, 'Ice Tongue Pull Up Ladder', Lddr), create_door(player, 'Ice Freezors Up Ladder', Lddr), create_door(player, 'Ice Freezors Hole', Hole), create_door(player, 'Ice Freezors Bomb Hole', Hole), # combine these two? -- they have to lead to the same spot create_door(player, 'Ice Freezors Ledge Hole', Hole), - create_door(player, 'Ice Freezors Ledge ES', Intr).dir(Direction.East, 0x7e, Bot, High).pos(2), - create_door(player, 'Ice Tall Hint WS', Intr).dir(Direction.West, 0x7e, Bot, High).pos(1), - create_door(player, 'Ice Tall Hint EN', Nrml).dir(Direction.East, 0x7e, Top, High).pos(1), - create_door(player, 'Ice Tall Hint SE', Nrml).dir(Direction.South, 0x7e, Right, High).small_key().pos(0), - create_door(player, 'Ice Hookshot Ledge WN', Nrml).dir(Direction.West, 0x7f, Top, High).pos(0), + create_door(player, 'Ice Freezors Ledge ES', Intr).dir(Ea, 0x7e, Bot, High).pos(2), + create_door(player, 'Ice Tall Hint WS', Intr).dir(We, 0x7e, Bot, High).pos(1), + create_door(player, 'Ice Tall Hint EN', Nrml).dir(Ea, 0x7e, Top, High).pos(1), + create_door(player, 'Ice Tall Hint SE', Nrml).dir(So, 0x7e, Right, High).small_key().pos(0), + create_door(player, 'Ice Hookshot Ledge WN', Nrml).dir(We, 0x7f, Top, High).pos(0), create_door(player, 'Ice Hookshot Ledge Path', Lgcl), create_door(player, 'Ice Hookshot Balcony Path', Lgcl), - create_door(player, 'Ice Hookshot Balcony SW', Intr).dir(Direction.South, 0x7f, Left, High).pos(1), - create_door(player, 'Ice Spikeball NW', Intr).dir(Direction.North, 0x7f, Left, High).pos(1), - create_door(player, 'Ice Spikeball Up Stairs', Sprl).dir(Direction.Up, 0x7f, 0, HTH).ss(Z, 0x1a, 0x34, True, True), - create_door(player, 'Ice Lonely Freezor NE', Nrml).dir(Direction.North, 0x8e, Right, High).small_key().pos(0), - create_door(player, 'Ice Lonely Freezor Down Stairs', Sprl).dir(Direction.Up, 0x8e, 0, HTH).ss(S, 0x11, 0x50, True, True), - create_door(player, 'Iced T EN', Nrml).dir(Direction.East, 0xae, Top, High).pos(0), - create_door(player, 'Iced T Up Stairs', Sprl).dir(Direction.Up, 0xae, 0, HTH).ss(S, 0x1a, 0x3c, True, True), - create_door(player, 'Ice Catwalk WN', Nrml).dir(Direction.West, 0xaf, Top, High).pos(1), - create_door(player, 'Ice Catwalk NW', Nrml).dir(Direction.North, 0xaf, Left, High).pos(0), - create_door(player, 'Ice Many Pots SW', Nrml).dir(Direction.South, 0x9f, Left, High).pos(1), - create_door(player, 'Ice Many Pots WS', Nrml).dir(Direction.West, 0x9f, Bot, High).pos(0), - create_door(player, 'Ice Crystal Right ES', Nrml).dir(Direction.East, 0x9e, Bot, High).pos(3), + create_door(player, 'Ice Hookshot Balcony SW', Intr).dir(So, 0x7f, Left, High).pos(1), + create_door(player, 'Ice Spikeball NW', Intr).dir(No, 0x7f, Left, High).pos(1), + create_door(player, 'Ice Spikeball Up Stairs', Sprl).dir(Up, 0x7f, 0, HTH).ss(Z, 0x1a, 0x34, True, True), + create_door(player, 'Ice Lonely Freezor NE', Nrml).dir(No, 0x8e, Right, High).small_key().pos(0), + create_door(player, 'Ice Lonely Freezor Down Stairs', Sprl).dir(Up, 0x8e, 0, HTH).ss(S, 0x11, 0x50, True, True), + create_door(player, 'Iced T EN', Nrml).dir(Ea, 0xae, Top, High).pos(0), + create_door(player, 'Iced T Up Stairs', Sprl).dir(Up, 0xae, 0, HTH).ss(S, 0x1a, 0x3c, True, True), + create_door(player, 'Ice Catwalk WN', Nrml).dir(We, 0xaf, Top, High).pos(1), + create_door(player, 'Ice Catwalk NW', Nrml).dir(No, 0xaf, Left, High).pos(0), + create_door(player, 'Ice Many Pots SW', Nrml).dir(So, 0x9f, Left, High).pos(1), + create_door(player, 'Ice Many Pots WS', Nrml).dir(We, 0x9f, Bot, High).pos(0), + create_door(player, 'Ice Crystal Right ES', Nrml).dir(Ea, 0x9e, Bot, High).pos(3), create_door(player, 'Ice Crystal Right Orange Barrier', Lgcl), create_door(player, 'Ice Crystal Right Blue Hole', Hole), # combine holes again?? create_door(player, 'Ice Crystal Left Orange Barrier', Lgcl), create_door(player, 'Ice Crystal Left Blue Barrier', Lgcl), create_door(player, 'Ice Crystal Block Exit', Lgcl), create_door(player, 'Ice Crystal Block Hole', Hole), - create_door(player, 'Ice Crystal Left WS', Intr).dir(Direction.West, 0x9e, Bot, High).pos(2), - create_door(player, 'Ice Big Chest View ES', Intr).dir(Direction.East, 0x9e, Bot, High).pos(2), + create_door(player, 'Ice Crystal Left WS', Intr).dir(We, 0x9e, Bot, High).pos(2), + create_door(player, 'Ice Big Chest View ES', Intr).dir(Ea, 0x9e, Bot, High).pos(2), create_door(player, 'Ice Big Chest Landing Push Blocks', Lgcl), - create_door(player, 'Ice Crystal Right NE', Intr).dir(Direction.North, 0x9e, Right, High).big_key().pos(1), - create_door(player, 'Ice Backwards Room SE', Intr).dir(Direction.South, 0x9e, Right, High).pos(1), - create_door(player, 'Ice Backwards Room Down Stairs', Sprl).dir(Direction.Down, 0x9e, 0, HTH).ss(S, 0x11, 0x80, True, True).small_key().pos(0), + create_door(player, 'Ice Crystal Right NE', Intr).dir(No, 0x9e, Right, High).big_key().pos(1), + create_door(player, 'Ice Backwards Room SE', Intr).dir(So, 0x9e, Right, High).pos(1), + create_door(player, 'Ice Backwards Room Down Stairs', Sprl).dir(Dn, 0x9e, 0, HTH).ss(S, 0x11, 0x80, True, True).small_key().pos(0), create_door(player, 'Ice Backwards Room Hole', Hole), - create_door(player, 'Ice Anti-Fairy Up Stairs', Sprl).dir(Direction.Up, 0xbe, 0, HTH).ss(S, 0x1a, 0x6c, True, True), - create_door(player, 'Ice Anti-Fairy SE', Intr).dir(Direction.South, 0xbe, Right, High).pos(2), - create_door(player, 'Ice Switch Room NE', Intr).dir(Direction.North, 0xbe, Right, High).pos(2), - create_door(player, 'Ice Switch Room ES', Nrml).dir(Direction.East, 0xbe, Bot, High).small_key().pos(1), - create_door(player, 'Ice Switch Room SE', Nrml).dir(Direction.South, 0xbe, Right, High).pos(0), - create_door(player, 'Ice Refill WS', Nrml).dir(Direction.West, 0xbf, Bot, High).small_key().pos(0), + create_door(player, 'Ice Anti-Fairy Up Stairs', Sprl).dir(Up, 0xbe, 0, HTH).ss(S, 0x1a, 0x6c, True, True), + create_door(player, 'Ice Anti-Fairy SE', Intr).dir(So, 0xbe, Right, High).pos(2), + create_door(player, 'Ice Switch Room NE', Intr).dir(No, 0xbe, Right, High).pos(2), + create_door(player, 'Ice Switch Room ES', Nrml).dir(Ea, 0xbe, Bot, High).small_key().pos(1), + create_door(player, 'Ice Switch Room SE', Nrml).dir(So, 0xbe, Right, High).pos(0), + create_door(player, 'Ice Refill WS', Nrml).dir(We, 0xbf, Bot, High).small_key().pos(0), create_door(player, 'Ice Fairy Warp', Warp), - create_door(player, 'Ice Antechamber NE', Nrml).dir(Direction.North, 0xce, Right, High).pos(0), + create_door(player, 'Ice Antechamber NE', Nrml).dir(No, 0xce, Right, High).pos(0), create_door(player, 'Ice Antechamber Hole', Hole), # Door Templates - # create_door(player, '', Nrml).dir(Direction.North, 0x00, Right, High).pos(), - # create_door(player, '', Intr).dir(Direction.North, 0x00, Right, High).pos(), - # create_door(player, '', Sprl).dir(Direction.Up, 0x00, 0, HTH).ss(Q, 0x0, 0x0), + # create_door(player, '', Nrml).dir(No, 0x00, Right, High).pos(), + # create_door(player, '', Intr).dir(No, 0x00, Right, High).pos(), + # create_door(player, '', Sprl).dir(Up, 0x00, 0, HTH).ss(Q, 0x0, 0x0), # create_door(player, '', Lgcl), # create_door(player, '', Hole), # create_door(player, '', Warp), @@ -818,7 +818,7 @@ def create_paired_doors(world, player): PairedDoor('Eastern Courtyard N', 'Eastern Darkness S'), # PairedDoor('', ''), # mire fishbone key door # PairedDoor('', ''), # mire big key door to bridges - PairedDoor('Eastern Big Key NE', 'Eastern Compass Area SW'), + PairedDoor('Eastern Big Key NE', 'Eastern Hint Tile Blocked Path SE'), # PairedDoor('', ''), # TR somaria hub to pokey PairedDoor('Eastern Dark Square Key Door WN', 'Eastern Cannonball Ledge Key Door EN'), PairedDoor('Thieves BK Corner NW', 'Thieves Pot Alcove Bottom SW'), # TT random bomb to pots