Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions worlds/crystal_project/__init__.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import logging

from .Items import item_table, optional_scholar_abilities, get_random_starting_jobs, filler_items, \
from .items import item_table, optional_scholar_abilities, get_random_starting_jobs, filler_items, \
get_item_names_per_category, progressive_equipment, non_progressive_equipment, get_starting_jobs, \
set_jobs_at_default_locations, job_count_in_pool, default_starting_job_list, job_list
from .Locations import get_locations, get_bosses
from .Regions import init_areas
from .Options import CrystalProjectOptions, IncludedRegions
set_jobs_at_default_locations, default_starting_job_list, job_list
from .locations import get_locations, get_bosses
from .regions import init_areas
from .options import CrystalProjectOptions, IncludedRegions
from .rules import CrystalProjectLogic

from typing import List, Set, Dict, Any
Expand Down Expand Up @@ -136,7 +136,6 @@ def create_regions(self) -> None:

init_areas(self, locations, self.options)

jobs_earnable:int = 0
if self.options.jobRando.value == self.options.jobRando.option_none:
jobs_earnable = set_jobs_at_default_locations(self)
else:
Expand Down
Empty file.
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
from typing import Dict, Set, Tuple, NamedTuple, Optional, List
from typing import Dict, Set, Tuple, NamedTuple, Optional, List, TYPE_CHECKING
from BaseClasses import ItemClassification, Item

if TYPE_CHECKING:
from . import CrystalProjectWorld

class ItemData(NamedTuple):
category: str
code: Optional[int]
Expand Down Expand Up @@ -1645,14 +1648,4 @@ def set_jobs_at_default_locations(world: "CrystalProjectWorld"):
#message = "Placing" + job_name + " at " + job_crystal_dictionary[job_name]
#world.logger.info(message)

return len(job_crystal_dictionary)

def job_count_in_pool(world: "CrystalProjectWorld", pool:list[Item]):
job_count:int = 0
for item in pool:
for job in job_list:
if job.name == item.name:
job_count += 1

return job_count

return len(job_crystal_dictionary)
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
from typing import List, Optional, Callable, NamedTuple
from BaseClasses import CollectionState
from .Options import CrystalProjectOptions
from .options import CrystalProjectOptions
from .rules import CrystalProjectLogic
from .Keys import *
from .KeyItems import *
from .constants.keys import *
from .constants.key_items import *

class LocationData(NamedTuple):
region: str
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
from typing import List, Dict
from BaseClasses import Region, Location, MultiWorld
from .Options import CrystalProjectOptions
from .Locations import LocationData
from .options import CrystalProjectOptions
from .locations import LocationData
from .rules import CrystalProjectLogic
from .Keys import *
from .KeyItems import *
from .constants.keys import *
from .constants.key_items import *

class CrystalProjectLocation(Location):
game: str = "CrystalProject"
Expand Down
6 changes: 3 additions & 3 deletions worlds/crystal_project/rules.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
from .Options import CrystalProjectOptions
from .options import CrystalProjectOptions
from .constants.keys import *
from worlds.generic.Rules import set_rule, forbid_items_for_player, add_rule
from BaseClasses import CollectionState
from typing import TYPE_CHECKING, Optional
if TYPE_CHECKING:
from . import CrystalProjectWorld
from .Keys import *

class CrystalProjectLogic:
player: int
Expand Down Expand Up @@ -78,7 +78,7 @@ def get_starting_job_count(self):
return 6

def has_enough_clamshells(self, state: CollectionState):
return state.has("Item - Clamshell", self.player, self.options.clamshellsQuantity)
return state.has("Item - Clamshell", self.player, self.options.clamshellsQuantity.value)

def has_rental_quintar(self, state: CollectionState) -> bool:
return state.has_any({"Item - Progressive Quintar Flute"}, self.player) or state.has("Item - Owl Drum", self.player)
Expand Down
Loading