Checkpoint initial implementation
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
from tungston.core.geology.replacement import Replacement
|
||||
from tungston.core.resourceid import ResourceId
|
||||
|
||||
|
||||
# Class ############################################################################################
|
||||
|
||||
class Mineral:
|
||||
|
||||
def __init__(self, name:str, replacements:None|tuple[Replacement]=None):
|
||||
self.name = name
|
||||
self.replacements = replacements or []
|
||||
|
||||
def __str__(self) -> str:
|
||||
return self.name
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return "".join([str(p) for p in [
|
||||
f"Mineral<{self.name}>", "{",
|
||||
"replacements: [",
|
||||
", ".join([str(r) for r in self.replacements]),
|
||||
"]",
|
||||
"}"
|
||||
]])
|
||||
|
||||
def addStoneReplacement(self, blockId:str) -> "Mineral":
|
||||
blockId = ResourceId.canonical(blockId)
|
||||
self.replacements.append(Replacement(STONE_REPLACEABLES, blockId))
|
||||
return self
|
||||
|
||||
def addDeepslateReplacement(self, blockId:str) -> "Mineral":
|
||||
blockId = ResourceId.canonical(blockId)
|
||||
self.replacements.append(Replacement(DEEPSLATE_REPLACEABLES, blockId))
|
||||
Reference in New Issue
Block a user