forked from NumberSir/DOL-Mod-Created-Helper
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
63 additions
and
214 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
/.vscode/ | ||
/.idea/ | ||
/data/tmp/ | ||
/data/passage/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,20 @@ | ||
# ovoDoLMods | ||
# Mods for Degrees of Lewdity | ||
|
||
## 消灭空格 | ||
下载见 releases。 | ||
|
||
尽量删除汉化版中多出的空格。 | ||
## Eliminate Spaces / 消灭空格 | ||
|
||
尽量删除多出的空格。 | ||
|
||
### 原理 | ||
|
||
目前游戏中多出空格的原因: | ||
|
||
- 有文字输出的 widget 内换行(`\n`)和缩进(`\t`) | ||
- 无文字输出的 widget | ||
- 正文中 `switch`、`if` 代码块内换行和缩进 | ||
|
||
故结合使用以下方法删去: | ||
|
||
- 删去有文字输出的 widget 内的换行和缩进 | ||
- 在无文字输出的 widget 内使用 `<<silently>>` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
(() => { | ||
const modUtils = window.modUtils; | ||
|
||
function deleteTandN(passages) { | ||
for (let passage of passages) { | ||
let replaced = modUtils.getPassageData(passage).content.replaceAll(/\/\*(.|\n)*?\*\//g, '').replaceAll(/<!--(\n|.)*?-->/g, '').replaceAll('\n', '').replaceAll('\t', ''); | ||
modUtils.updatePassageData(passage, replaced, ['widget'], 0); | ||
} | ||
} | ||
|
||
function addSilently(passages) { | ||
for (let [passage, widgets] of Object.entries(passages)) { | ||
let passageContent = modUtils.getPassageData(passage).content; | ||
let re = new RegExp(`(?<=<<widget "(${widgets.join('|')})">>)(.|\n)+?(?=<<\/widget>>)`, 'g'); | ||
let patterns = passageContent.match(re); | ||
for (let pattern of patterns) { | ||
passageContent = passageContent.replace(pattern, `<<silently>>${pattern}<</silently>>`); | ||
} | ||
modUtils.updatePassageData(passage, passageContent, ['widget'], 0); | ||
} | ||
} | ||
|
||
addSilently({ | ||
'Widgets Named Npcs': [ | ||
'npc', | ||
], | ||
'Widgets NPC Generation': [ | ||
'generate1', 'generate2', 'generate3', 'generate4', 'generate5', 'generate6', | ||
'generatey1', 'generatey2', 'generatey3', 'generatey4', 'generatey5', 'generatey6', | ||
'generatev1', 'generatev2', 'generatev3', 'generatev4', 'generatev5', 'generatev6', | ||
'generateyv1', 'generateyv2', 'generateyv3', 'generateyv4', 'generateyv5', 'generateyv6', | ||
'generatep2', 'generatep3', 'generatep4', 'generatep5', 'generatep6', | ||
'generateyp2', 'generateyp3', 'generateyp4', 'generateyp5', 'generateyp6', | ||
'generates1', 'generates2', 'generates3', 'generates4', 'generates5', 'generates6', | ||
] | ||
}); | ||
|
||
// let allWidgetPassages = modUtils.getAllPassageData().filter(passage => passage.tags.includes('widget')).map(passage => passage.name); | ||
deleteTandN(['Widgets Text']); | ||
|
||
})(); |