예제 #1
0
def load(scale, settings):
    arrow_frames = []
    for x in range(120, 100, -4):
        img = YImage(reversearrow, settings, scale * x / 100, rotate=1)
        arrow_frames.append(img.img)

    sliderb_frames = YImages(sliderb, settings, scale).frames
    sliderfollow_frames = YImages(sliderfollowcircle, settings, scale).frames
    slider_tick = YImage(sliderscorepoint, settings, scale).img
    return arrow_frames, sliderb_frames, sliderfollow_frames, slider_tick
예제 #2
0
def prepare_hitresults(scale, diff, settings):

    cs = (54.4 - 4.48 * diff["CircleSize"]) * scale
    scale = cs * 2 * hitresult_size / default_size

    particles_frames = prepare_particles(scale, settings)

    scores_frames = {}
    singleframemiss = False
    for x in [0, 50, 100, 300]:
        yimg = YImages(hitprefix + str(x),
                       settings,
                       scale,
                       delimiter="-",
                       rotate=x == 0)
        f = []
        f1 = yimg.frames
        if yimg.unanimate or len(yimg.frames) == 1:
            img = yimg.frames[0]
            f = []
            if x != 0:
                f = size.grow(img, 0.7, 1.1, 0.05)

        if x == 0:
            if yimg.unanimate or len(yimg.frames) == 1:
                f1 = f1[0]
                f1 = size.shrink(f1, 1.45, 0.9, 0.05)
            f = []
            singleframemiss = len(yimg.frames) == 1

        if x in particles_frames:
            f = []
            f1 = particles_frames[x]
        scores_frames[x] = f + f1
    return scores_frames, singleframemiss
예제 #3
0
def prepare_fpmanager(scale, settings):
    """
	:param settings:
	:param path: string
	:param scale: float
	:return: [PIL.Image]
	"""
    fp = YImages(followpoints, settings, scale * 0.5, delimiter="-", rotate=1)
    return fp.frames
예제 #4
0
def load(settings):
    circle = YImage(hitcircle, settings).img
    c_overlay = YImages(hitcircleoverlay, settings, delimiter="-").frames[0]
    yslider = YImage(sliderstartcircle, settings, fallback=hitcircle)
    slider = yslider.img
    slideroverlay = sliderstartcircleoverlay
    if yslider.imgfrom == ImageFrom.FALLBACK_X or yslider.imgfrom == ImageFrom.FALLBACK_X2:
        slideroverlay = hitcircleoverlay
    s_overlay = YImage(slideroverlay, settings, fallback=hitcircleoverlay).img
    return circle, c_overlay, slider, s_overlay
예제 #5
0
def prepare_scorebar(scale, settings):
    """
	:param settings:
	:param scale: float
	:return: [PIL.Image]
	"""
    yimg = YImages(scorebar, settings, scale, delimiter="-")
    img = yimg.frames

    defaultpath = yimg.imgfrom == ImageFrom.DEFAULT_X or yimg.imgfrom == ImageFrom.DEFAULT_X2
    yimgmarker = YImage(scorebarmarker,
                        settings,
                        scale,
                        defaultpath=defaultpath,
                        fallback="reeee")
    marker = yimgmarker.img
    hasmarker = yimgmarker.imgfrom != ImageFrom.BLANK
    return img, marker, hasmarker
예제 #6
0
def prepare_rankinghitresults(scale, settings):
    scores_frames = {}
    scale *= 0.5
    bonus = {100: "k", 300: "g"}
    for x in [0, 50, 100, 300]:
        yimg = YImage(hitprefix + str(x), settings, scale)
        scores_frames[x] = yimg.img

        if x > 50:
            yimg = YImage(hitprefix + str(x) + bonus[x],
                          settings,
                          scale,
                          fallback="reeee")
            img = yimg.img
            if yimg.imgfrom == ImageFrom.BLANK:
                yimg = YImages(hitprefix + str(x) + bonus[x],
                               settings,
                               scale,
                               delimiter="-")
                img = yimg.frames[0]
            scores_frames[x + 5] = img

    return scores_frames
예제 #7
0
def prepare_rankingcombo(scale, settings):
    img = YImages(rankingcombo, settings, scale, "-").frames
    return img
예제 #8
0
def prepare_menuback(scale, settings):
    img = YImages(menuback, settings, scale, delimiter="-").frames
    return img
예제 #9
0
def prepare_rankinggraph(scale, settings):
    img = YImage(rankinggraph, settings, scale).img
    perfectimg = YImages(rankingperfect, settings, scale,
                         delimiter="-").frames[0]

    return [img, perfectimg]
예제 #10
0
def prepare_rankingaccuracy(scale, settings):
    img = YImages(rankingaccuracy, settings, scale, delimiter="-").frames
    return img