👨‍💻 dev SkillSupreme

development

fukurou

the supreme coder
ADMIN
Python:
import re

def extract_skills(text: str) -> list[str]:
    return re.findall(r"\bDi[A-Z][a-zA-Z]*\b", text)
 

fukurou

the supreme coder
ADMIN
Python:
import re

def extract_skills(text: str) -> list[str]:
    return re.findall(r"\bDi[a-zA-Z]*\b", text)
 

owly

闇の伝説
Staff member
戦闘 コーダー
Python:
import re

def extract_skills(text: str) -> list[str]:
    return re.findall(r"\bDi[a-zA-Z]*\b", text)
hmm so we are finally building skynet ha?
took us long enough, oh well better late then never.
 

fukurou

the supreme coder
ADMIN
Python:
class DiNothing(Skill):
    # this skill does absolutely nothing
    def __init__(self):
        super().__init__()

class AHReequip(Skill):
    # equips a skill as needed
    def __init__(self, brain:Brain):
        super().__init__()
        self.set_skill_type(2)
        self.brain = brain
        self.skills: dict[str,Skill] = {}
        self.skill_names: set[str] = set()
        self.learner:AXLearnability = AXLearnability(tolerance=3)
        self.learner.defcons.add("lame")
        self.learner.goals.add("thanks")
        self.learner.goals.add("good")
        self.learner.defcon5.add("wrong")
        self.active_skill = DiNothing()
        self.active_key = "default"

    def manual_skill_add(self, skill:Skill, *keys:str)->AHReequip:
        self.add_skill(skill)
        for key in keys:
            self.skills[key] = skill
        return self


    def get_random_skill(self) -> Skill:
        if not self.skills:
            return DiNothing()
        return self.skills[random.choice(list(self.skill_names))]

    def add_skill(self, skill:Skill)->AHReequip:
        self.skills[skill.skill_name] = skill
        self.skill_names.add(skill.skill_name)
        return self


    def input(self, ear: str, skin: str, eye: str):
        # trigger reequip:
        if ear.startswith("please") or ear.endswith("please"):
            temp = ear.replace("please", "").strip()
            if temp not in self.skills:
                self.skills[temp] = self.get_random_skill()
            self.brain.remove_skill(self.active_skill)
            self.active_skill = self.skills[temp]
            self.active_key = temp
            self.brain.add_skill(self.active_skill)
            self.learner.pendAlgWithoutConfirmation()
            self.setSimpleAlg(f"{self.active_skill.skill_name} skill equipped")
            return
        if self.learner.mutateSkill(ear):
            self.brain.remove_skill(self.active_skill)
            self.skills[self.active_key] = self.get_random_skill()
            self.active_skill = self.skills[self.active_key]
            self.brain.add_skill(self.active_skill)
            self.setSimpleAlg(f"{self.active_skill.skill_name} skill equipped")
            self.learner.pendAlgWithoutConfirmation()

Python:
my_dict = {"a": 1, "b": 2, "c": 3}

keys_list: list[str] = list(my_dict.keys())
print(keys_list)   # ['a', 'b', 'c']
 
Top