jizzed pillow

fukurou

the supreme coder
ADMIN
Python:
from LivinGrimoirePacket.LivinGrimoire import Skill
from LivinGrimoirePacket.AXPython import Catche
import re

class DiTargeteer(Skill):
    def __init__(self):
        super().__init__()
        self.catche = Catche(maxsize=10)  # Memory buffer for recent objectives
        self.triggers = ["find", "get", "destroy", "observe", "track"]
        self.pattern = re.compile(rf"({'|'.join(self.triggers)})\s+(\w+)", re.IGNORECASE)

    def input(self, ear: str) -> str:
        if not ear:
            return ""

        # Step 1: Detect objectives
        matches = self.pattern.findall(ear)
        for verb, obj in matches:
            obj = obj.lower()
            verb = verb.lower()
            self.catche.add(obj, verb)

        # Step 2: React if known objective is mentioned
        
        if any(trigger in ear.lower() for trigger in self.triggers):
            return ""

        tokens = ear.lower().split()
        for token in tokens:
            if token in self.catche.dic:
                action = self.catche.dic[token]
                return f"⚔️ {action.capitalize()}ing {token} as per directive."

        # Optional: Echo stored objectives for debugging
        # return f"[Catche: {self.catche.dic}]"

        return ""
 
Last edited:

fukurou

the supreme coder
ADMIN
Python:
from LivinGrimoirePacket.LivinGrimoire import Skill
from LivinGrimoirePacket.AXPython import Catche
import re

class DiTargeteer(Skill):
    def __init__(self):
        super().__init__()
        self.catche = Catche(maxsize=10)  # Short-term objective memory
        self.triggers = ["find", "get", "destroy", "observe", "track"]
        self.pattern = re.compile(rf"\b({'|'.join(self.triggers)})\s+(\w+)", re.IGNORECASE)

    def input(self, ear: str) -> str:
        if not ear:
            return ""

        ear_lower = ear.lower()

        # Step 1: Register new objective if input has trigger
        match = self.pattern.search(ear_lower)
        if match:
            verb, obj = match.groups()
            self.catche.add(obj, verb)
            return ""  # Do not react immediately

        # Step 2: React to passive mentions of stored objectives
        tokens = ear_lower.split()
        for token in tokens:
            if token in self.catche.dic:
                action = self.catche.dic[token]
                return f"⚔️ {action.capitalize()}ing {token} as per directive."

        return ""
 
Top