Add settings for multiple expressions

This commit is contained in:
Wolfsblvt
2025-01-26 23:11:22 +01:00
parent adede8b6be
commit 239c3f1db7
3 changed files with 31 additions and 3 deletions

View File

@@ -1588,10 +1588,10 @@ async function setExpression(character, expression, force = false) {
let spriteFile = sprite.files[0];
// Calculate next expression
if (sprite.files.length > 1) {
// Calculate next expression, if multiple are allowed
if (extension_settings.expressions.allowMultiple && sprite.files.length > 1) {
let possibleFiles = sprite.files;
if (extension_settings.expressions_reroll_if_same) {
if (extension_settings.expressions.rerollIfSame) {
possibleFiles = possibleFiles.filter(x => x.imageSrc !== prevExpressionSrc);
}
spriteFile = possibleFiles[Math.floor(Math.random() * possibleFiles.length)];
@@ -2141,6 +2141,14 @@ function migrateSettings() {
extension_settings.expressions.translate = !!$(this).prop('checked');
saveSettingsDebounced();
});
$('#expressions_allow_multiple').prop('checked', extension_settings.expressions.allowMultiple).on('input', function () {
extension_settings.expressions.allowMultiple = !!$(this).prop('checked');
saveSettingsDebounced();
});
$('#expressions_reroll_if_same').prop('checked', extension_settings.expressions.rerollIfSame).on('input', function () {
extension_settings.expressions.rerollIfSame = !!$(this).prop('checked');
saveSettingsDebounced();
});
$('#expression_override_cleanup_button').on('click', onClickExpressionOverrideRemoveAllButton);
$(document).on('dragstart', '.expression', (e) => {
e.preventDefault();