Python

[교육자료]. 냥코 대작전 레어 뽑기(가챠) 시뮬레이션 구현

Acdong 2022. 5. 3. 15:59
728x90
import random

 

냥코 대전쟁 레어 뽑기 확률

출처 : 냥코 대전쟁 나무위키

# 확률값 정의
rare = 69.4
super_rare = 25
ultra_rare = 5
legend_rare = 0.6

rare_list = ["고양이 홉핑",
             "고양이 차륜",
             "고양이 에스테",
             "고양이 쥬라",
             "고양이 파이터"]

super_list = ["고양이 댄스",
             "고양이 스시",
             "오덕 고양이",
             "고타츠양이",
             "고양이 사과"]

ultra_list = ["고양이 아이스",
              "고양이 아이스 고스트",
             "고양이 머신",
             "도깨비 야옹마",
             "사람대장 도깨비 야옹마"]

legend_list = ["원더 모모코","무사시",'잔다르크',
               "천성용 바벨","리코더 고양이"]

 

가챠 뽑기 함수 구현

def rare_gacha():
    pick = random.random() * 100
    pick = round(pick,1)
    
    if pick < rare: # 69.4% 미만
        cat = random.choice(rare_list)
        return ['레어',cat]
    elif pick >= rare and pick < (rare + super_rare):
        cat = random.choice(super_list)
        return ['슈퍼레어',cat]
    elif pick >= (rare + super_rare) and pick < (rare + super_rare + ultra_rare):
        cat = random.choice(ultra_list)
        return ['울트라 슈퍼레어',cat]
    else:
        cat = random.choice(lengend_list)
        return ['레전드 레어',cat]

 

함수 실행

rare_gacha()

#['레어', '고양이 홉핑']

 

 

창 띄우기

import pyautogui as pg

use_check = pg.confirm(text='레어 뽑기 하시겠습니까',
                       buttons=['150통조림', '안한다.'])
if use_check == "150통조림":
    item = rare_gacha()
    pg.alert(text=f'{item[0]}!!! \n {item[1]}', button='OK')

반응형