Skip to content

Commit 7c3142a

Browse files
committed
Differentiate Chinese translations and team chat voice
1 parent 4dbf5e8 commit 7c3142a

File tree

3 files changed

+11
-7
lines changed

3 files changed

+11
-7
lines changed

src/discordEvents/directMessage.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ module.exports = {
2929
let speakText = message.cleanContent;
3030
if (/[\u3400-\u9FBF]/.test(message.cleanContent)) {
3131
try {
32-
speakText = await Translate(message.cleanContent, 'en');
32+
speakText = await Translate(message.cleanContent, { from: 'zh', to: 'en' });
3333
}
3434
catch (e) {
3535
client.log(client.intlGet(null, 'infoCap'), `Translation failed: ${e.message}`);

src/discordTools/discordVoice.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ const Actors = require('../staticFiles/actors.json');
2323
const Client = require('../../index.ts');
2424

2525
module.exports = {
26-
sendDiscordVoiceMessage: async function (guildId, text) {
26+
sendDiscordVoiceMessage: async function (guildId, text, altVoice = false) {
2727
const connection = getVoiceConnection(guildId);
28-
const voice = await this.getVoice(guildId);
28+
const voice = await this.getVoice(guildId, altVoice);
2929
const url = `https://api.streamelements.com/kappa/v2/speech?voice=${voice}&text=${encodeURIComponent(text)}`;
3030

3131
if (connection) {
@@ -37,13 +37,17 @@ module.exports = {
3737
}
3838
},
3939

40-
getVoice: async function (guildId) {
40+
getVoice: async function (guildId, altVoice = false) {
4141
const instance = Client.client.getInstance(guildId);
42-
const gender = instance.generalSettings.voiceGender;
42+
let gender = instance.generalSettings.voiceGender;
43+
if (altVoice) {
44+
gender = gender === 'male' ? 'female' : 'male';
45+
}
4346
const language = instance.generalSettings.language;
4447

4548
if (Actors[language]?.[gender] === null || Actors[language]?.[gender] === undefined) {
46-
return Actors[language]?.[gender === 'male' ? 'female' : 'male'];
49+
const fallbackGender = gender === 'male' ? 'female' : 'male';
50+
return Actors[language]?.[fallbackGender];
4751
}
4852
else {
4953
return Actors[language]?.[gender];

src/handlers/teamChatHandler.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ module.exports = async function (rustplus, client, message) {
2626
await DiscordMessages.sendTeamChatMessage(rustplus.guildId, message);
2727
if (instance.generalSettings.teamChatVoiceSteamId &&
2828
instance.generalSettings.teamChatVoiceSteamId === message.steamId.toString()) {
29-
await DiscordVoice.sendDiscordVoiceMessage(rustplus.guildId, message.message);
29+
await DiscordVoice.sendDiscordVoiceMessage(rustplus.guildId, message.message, true);
3030
}
3131
}

0 commit comments

Comments
 (0)