Handle case

This commit is contained in:
LeoKu 2022-06-07 22:15:37 +08:00
parent e855c18cc4
commit f9243a41bc

View File

@ -58,6 +58,11 @@ export function getRandomAvatarOption(
usually: [NONE], usually: [NONE],
}) })
const hairShape = getRandomValue(topList, {
avoid: [useOption.widgets?.tops?.shape],
})
const hairColor = getRandomFillColor()
const avatarOption: AvatarOption = { const avatarOption: AvatarOption = {
gender, gender,
@ -66,7 +71,10 @@ export function getRandomAvatarOption(
background: { background: {
color: getRandomValue(SETTINGS.backgroundColor, { color: getRandomValue(SETTINGS.backgroundColor, {
avoid: [useOption.background?.color], avoid: [
useOption.background?.color,
hairShape === TopsShape.Punk && hairColor, // Handle special cases and prevent color conflicts.
],
}), }),
}, },
@ -75,10 +83,8 @@ export function getRandomAvatarOption(
shape: getRandomValue(SETTINGS.faceShape), shape: getRandomValue(SETTINGS.faceShape),
}, },
tops: { tops: {
shape: getRandomValue(topList, { shape: hairShape,
avoid: [useOption.widgets?.tops?.shape], fillColor: hairColor,
}),
fillColor: getRandomFillColor(),
}, },
ear: { ear: {
shape: getRandomValue(SETTINGS.earShape, { shape: getRandomValue(SETTINGS.earShape, {