Skip to content

Commit 179364e

Browse files
committed
add folder-based structure for spriteobjects
1 parent 231b03c commit 179364e

3 files changed

Lines changed: 313 additions & 108 deletions

File tree

Monika After Story/game/sprite-chart-matrix.rpy

Lines changed: 63 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1639,12 +1639,20 @@ init -4 python in mas_sprites:
16391639
cache_acs[day_key] = None
16401640
return
16411641

1642+
# structure modifiers
1643+
if acs.use_folders:
1644+
pfx = ""
1645+
dlm = "/"
1646+
else:
1647+
pfx = PREFIX_ACS
1648+
dlm = ART_DLM
1649+
16421650
# build img list minus file extensions
16431651
img_list = [
16441652
A_T_MAIN,
1645-
PREFIX_ACS,
1653+
pfx,
16461654
acs.img_sit,
1647-
ART_DLM,
1655+
dlm,
16481656
poseid,
16491657
arm_code,
16501658
FILE_EXT,
@@ -2308,47 +2316,69 @@ init -4 python in mas_sprites:
23082316
OUT:
23092317
rk_list - list to add render keys to
23102318
"""
2311-
# build img str
2312-
if lean:
2313-
img_list = (
2314-
H_MAIN,
2315-
PREFIX_HAIR_LEAN,
2316-
lean,
2317-
ART_DLM,
2318-
hair.img_sit,
2319-
ART_DLM,
2320-
hair_key,
2321-
FILE_EXT,
2322-
)
2323-
2324-
else:
2325-
img_list = (
2326-
H_MAIN,
2327-
PREFIX_HAIR,
2328-
hair.img_sit,
2329-
ART_DLM,
2330-
hair_key,
2331-
FILE_EXT,
2332-
)
2333-
2334-
# genreate string for key check
2335-
img_str = "".join(img_list)
23362319

23372320
# key check
2338-
img_key = (flt, img_str)
2321+
img_key = (flt, hair.img_sit, lean, hair_key)
23392322
cache_hair = _gc(CID_HAIR)
23402323
if img_key in cache_hair:
23412324
if cache_hair[img_key] is not None:
23422325
rk_list.append((img_key, CID_HAIR, None, None))
23432326
return
23442327

23452328
# check if mid and no need to render
2346-
if hair_key == MHAIR:
2329+
if hair_key in (MHAIR, store.MASHair.LAYER_MID):
23472330
if hair.mpm_mid is None or not hair.mpm_mid.get(leanpose, False):
23482331
# mid not in this hair for this pose
23492332
cache_hair[img_key] = None
23502333
return
23512334

2335+
# build img str
2336+
if lean:
2337+
2338+
if hair.use_folders:
2339+
img_list = (
2340+
H_MAIN,
2341+
hair.img_sit,
2342+
"/",
2343+
lean,
2344+
ART_DLM,
2345+
hair_key,
2346+
FILE_EXT,
2347+
)
2348+
2349+
else:
2350+
img_list = (
2351+
H_MAIN,
2352+
PREFIX_HAIR_LEAN,
2353+
lean,
2354+
ART_DLM,
2355+
hair.img_sit,
2356+
ART_DLM,
2357+
hair_key,
2358+
FILE_EXT,
2359+
)
2360+
2361+
else:
2362+
2363+
if hair.use_folders:
2364+
pfx = ""
2365+
dlm = "/"
2366+
else:
2367+
pfx = PREFIX_HAIR
2368+
dlm = ART_DLM
2369+
2370+
img_list = (
2371+
H_MAIN,
2372+
pfx,
2373+
hair.img_sit,
2374+
dlm,
2375+
hair_key,
2376+
FILE_EXT,
2377+
)
2378+
2379+
# genreate string for key check
2380+
img_str = "".join(img_list)
2381+
23522382
# otherwise need to build ImageBase
23532383
rk_list.append((
23542384
img_key,
@@ -2597,12 +2627,13 @@ init -4 python in mas_sprites:
25972627
# initial values
25982628
fpfx = face_lean_mode(lean)
25992629
rk_list = []
2630+
back_hk, mid_hk, front_hk = hair._get_hair_keys()
26002631

26012632
# 1. pre-acs
26022633
_rk_accessory_list(rk_list, acs_pre_list, flt, leanpose)
26032634

26042635
# 2. back hair
2605-
_rk_hair(rk_list, hair, flt, BHAIR, lean, leanpose)
2636+
_rk_hair(rk_list, hair, flt, back_hk, lean, leanpose)
26062637

26072638
# 3. bbh-acs
26082639
_rk_accessory_list(rk_list, acs_bbh_list, flt, leanpose)
@@ -2645,7 +2676,7 @@ init -4 python in mas_sprites:
26452676
_rk_accessory_list(rk_list, acs_bmh_list, flt, leanpose)
26462677

26472678
# 13. mid-hair
2648-
_rk_hair(rk_list, hair, flt, MHAIR, lean, leanpose)
2679+
_rk_hair(rk_list, hair, flt, mid_hk, lean, leanpose)
26492680

26502681
# 14. mmh-acs
26512682
_rk_accessory_list(rk_list, acs_mhh_list, flt, leanpose)
@@ -2700,7 +2731,7 @@ init -4 python in mas_sprites:
27002731
_rk_face_pre(rk_list, flt, fpfx, lean, blush)
27012732

27022733
# 28. front-hair
2703-
_rk_hair(rk_list, hair, flt, FHAIR, lean, leanpose)
2734+
_rk_hair(rk_list, hair, flt, front_hk, lean, leanpose)
27042735

27052736
# 29. afh-acs
27062737
_rk_accessory_list(rk_list, acs_afh_list, flt, leanpose)

0 commit comments

Comments
 (0)