forked from capedayo/minya_hotomoe
251 lines
4.9 KiB
Python
251 lines
4.9 KiB
Python
from module_interface import ModuleInterface
|
|
import random
|
|
|
|
itemPrefixes = [
|
|
'플라티나로 만든',
|
|
'신선한',
|
|
'최신의',
|
|
'고대의',
|
|
'수제',
|
|
'시계장치의',
|
|
'전설의',
|
|
'구이',
|
|
'날것의',
|
|
'미냐가 만든',
|
|
'포켓 사이즈',
|
|
'사흘 전의',
|
|
'그 근처의',
|
|
'짭',
|
|
'사용된',
|
|
'고장난',
|
|
'시판되는',
|
|
'주문제작된',
|
|
'업무용의',
|
|
'Microsoft제',
|
|
'Apple제',
|
|
'인류 기술의 결정체인',
|
|
'2021년산',
|
|
'500kg정도의',
|
|
'고오급',
|
|
'썩은',
|
|
'인공지능 탑재',
|
|
'블록체인 탑재',
|
|
'반중력',
|
|
'접이식',
|
|
'휴대용',
|
|
'유전자 재조합',
|
|
'돌연변이로 비행 능력이 있는',
|
|
'순금으로 만든',
|
|
'투명한',
|
|
'빛나는',
|
|
'하트 모양의',
|
|
'움직이는',
|
|
'반으로 잘린',
|
|
'USB 커넥터가 달린',
|
|
'지난 날의',
|
|
'저주받은',
|
|
'인챈트된',
|
|
'하루치의 비타민이 들어간',
|
|
'손을 댄',
|
|
'환상의',
|
|
'가상의',
|
|
'원자력',
|
|
'고도로 훈련받은',
|
|
'유전자 조작이 아닌',
|
|
'런던 중심부에서 발견된',
|
|
'이세계의',
|
|
'다른 별의',
|
|
'수수께끼의',
|
|
'시공을 일그러뜨리는',
|
|
'이상한 소리가 나는',
|
|
'무산된',
|
|
'플라즈마화된',
|
|
'충격을 주면 낮은 확률로 폭발하는',
|
|
'주키니로 변신한',
|
|
'가설의',
|
|
'독이 있는',
|
|
'진짜',
|
|
'궁극의',
|
|
'초코가 들어간',
|
|
'악취가 나는',
|
|
'4차원',
|
|
'박동하는',
|
|
'정체를 알 수 없는',
|
|
'네모난',
|
|
'날뛰는',
|
|
'꿈의',
|
|
'어둠의',
|
|
'암흑의',
|
|
'봉인된',
|
|
'죽음의',
|
|
'얼어버린',
|
|
'마의',
|
|
'금단의',
|
|
'홀로그래픽',
|
|
'유압식',
|
|
]
|
|
|
|
items = [
|
|
'가지',
|
|
'토마토',
|
|
'오이',
|
|
'감자',
|
|
'볶음국수',
|
|
'허리',
|
|
'초밥',
|
|
'호박',
|
|
'유키치',
|
|
'금괴',
|
|
'알루미늄',
|
|
'나트륨',
|
|
'마그네슘',
|
|
'플루토늄',
|
|
'작은 금속',
|
|
'우유팩',
|
|
'페트병',
|
|
'쿠키',
|
|
'초콜릿',
|
|
'메이드복',
|
|
'오렌지',
|
|
'니삭스',
|
|
'반물질 콘덴서',
|
|
'입자가속기',
|
|
'마이크로프로세서 (8코어 16스레드)',
|
|
'원자력 발전소',
|
|
'L4 스위치',
|
|
'완충 체인',
|
|
'양전자 두뇌',
|
|
'행성',
|
|
'테르민',
|
|
'충치차',
|
|
'마운터',
|
|
'버킷 휠 익스커베이터',
|
|
'데몬 코어',
|
|
'게임보이 어드밴스',
|
|
'양자컴퓨터',
|
|
'아나몰픽 렌즈',
|
|
'벽장에서 나온 수수께끼의 생물',
|
|
'스마트폰',
|
|
'시계',
|
|
'푸딩',
|
|
'가브리엘의 나팔',
|
|
'맹거의 스펀지',
|
|
'피젯 스피너',
|
|
'초입방체',
|
|
'건축물',
|
|
'에너지 드링크',
|
|
'마우스 커서',
|
|
'안경',
|
|
'참치',
|
|
'쓰레기통',
|
|
'이쑤시개',
|
|
'도시락에 들어가는 초록색 칸막이같은 녀석',
|
|
'나무젓가락',
|
|
'환기구',
|
|
'페트병의 뚜껑',
|
|
'소파 블럭',
|
|
'피자',
|
|
'치약',
|
|
'깡통',
|
|
'열쇠고리',
|
|
'금발 벽안의 미소녀',
|
|
'SD카드',
|
|
'립 크림',
|
|
'초코 없는 초코소라빵',
|
|
'조류독감',
|
|
'자판기',
|
|
'무거운 것',
|
|
'노트북',
|
|
'육포',
|
|
'연어 치즈',
|
|
'다이아몬드',
|
|
'물체',
|
|
'월석',
|
|
'특이점',
|
|
'중성자별',
|
|
'액체',
|
|
'위성',
|
|
'주키니',
|
|
'검은 것',
|
|
'흰 것',
|
|
'빨간 것',
|
|
'동그란 것',
|
|
'네모난 것',
|
|
'카드 모양의 것',
|
|
'기체',
|
|
'연필',
|
|
'지우개',
|
|
'양날검',
|
|
'막대 모양의 것',
|
|
'농산물',
|
|
'메탈 슬라임',
|
|
'문어발',
|
|
'버섯',
|
|
'나메코',
|
|
'호로요이',
|
|
'손톱깎기',
|
|
'귓속말',
|
|
'인형',
|
|
'티라노사우르스',
|
|
'요로결석',
|
|
'엔터 키',
|
|
'항아리',
|
|
'수은',
|
|
'DHMO',
|
|
'물',
|
|
'토지',
|
|
'대륙',
|
|
'주사위',
|
|
'실외기',
|
|
'유압잭',
|
|
'타피오카',
|
|
'PSP',
|
|
'화장지 심지',
|
|
'골판지 상자',
|
|
'하니와',
|
|
'볼펜',
|
|
'샤펜',
|
|
'원자',
|
|
'우주',
|
|
'소립자',
|
|
'참기름',
|
|
'undefined',
|
|
'None',
|
|
'NAN',
|
|
'[object Object]'
|
|
]
|
|
|
|
ands = [
|
|
[None, None, '에 빙의한'],
|
|
[None, None, '에 들어가는'],
|
|
[None, None, '에 묻힌'],
|
|
['을', '를', ' 연상시키는'],
|
|
[None, None, ' 같은'],
|
|
['으로', '로', ' 가장한'],
|
|
[None, None, '에 올려진'],
|
|
[None, None, ' 옆에 있는'],
|
|
];
|
|
|
|
from mipac.models import Note
|
|
class AiTem(ModuleInterface):
|
|
def __init__(self):
|
|
super().__init__()
|
|
self.name = "Ai-tem"
|
|
self.regex_pattern = ".*Test_AI-tem"
|
|
|
|
self.funcs["generate"] = self._generate
|
|
print("[Ai-tem] Ai-like item generator, Ai-tem V1 loaded.")
|
|
|
|
async def execute_module(self, ctx: Note):
|
|
print("[Ai-tem] test Generate Note")
|
|
await ctx.api.action.reply(str(self._generate()), visibility="home")
|
|
|
|
def _generate(self):
|
|
item1_sel = random.choice(items)
|
|
con_sel = random.choice(ands)
|
|
item1_comp = self.manager.require("K-Josa").get_func("process_josa")(item1_sel, con_sel[0], con_sel[1]) + con_sel[2]
|
|
|
|
return random.choice(itemPrefixes) + ' ' + ((item1_comp + ' ' + random.choice(itemPrefixes) + ' ' + random.choice(items)) if random.choice([True, False]) else item1_sel)
|
|
|
|
def module_ready(self):
|
|
print("[Ai-tem] Module Ready.")
|