diff --git a/README.md b/README.md index 5ae61d7f..1c8290f9 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ 下記のようにconfig.yamlにBCDice-APIのエンドポイントURLを記述するとBCDice-API経由でダイスボットが反応します。 -APIバージョンの記述のない場合は1として扱われます、なお、判定結果の成功、失敗での色分けに対応するためにはAPIバージョンが2である必要があります。 +デフォルトの対応APIバージョンは2です、バージョン1が必要の場合は下記のdice配下のapiキーの値に1と記述してください(APIバージョン1はBCDice-API 3.0.0で削除されました)。APIバージョン3には現状対応していません。なお、判定結果の成功、失敗での色分けに対応するためにはAPIバージョンが2以上である必要があります。 ``` webrtc: @@ -38,7 +38,7 @@ webrtc: app: #未使用 dice: url: [BCDice-APIのエンドポイントURL] - api: [APIバージョン、1または2] + api: [APIバージョン] ``` **↓↓↓↓ 以下、ユドナリウム本家より ↓↓↓↓** diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 53798451..4f94d5d5 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -280,7 +280,6 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy { DiceBot.apiUrl = apiUrl.endsWith('/') ? apiUrl.substring(0, apiUrl.length - 1) : apiUrl; DiceBot.apiVersion = API_VERSION; DiceBot.diceBotInfos = []; - //DiceBot.diceBotInfos.push( let tempInfos = (API_VERSION == 1 ? infos.names : infos.game_system) .filter(info => (API_VERSION == 1 ? info.system : info.id) != 'DiceBot') .map(info => { @@ -315,7 +314,9 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy { : a.normalize == b.normalize ? 0 : a.normalize < b.normalize ? -1 : 1; }); - DiceBot.diceBotInfos.push(...tempInfos.map(info => { return { script: (API_VERSION == 1 ? info.system : info.id), game: info.name } })); + DiceBot.diceBotInfos = []; + DiceBot.diceBotInfosIndexed = []; + DiceBot.diceBotInfos.push(...tempInfos.map(info => { return { id: (API_VERSION == 1 ? info.system : info.id), game: info.name } })); if (tempInfos.length > 0) { let sentinel = tempInfos[0].normalize.substring(0, 1); let group = { index: tempInfos[0].normalize.substring(0, 1), infos: [] }; @@ -331,63 +332,13 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy { DiceBot.diceBotInfosIndexed.push(group); group = { index: index, infos: [] }; } - group.infos.push({ script: (API_VERSION == 1 ? info.system : info.id), game: info.name }); + group.infos.push({ id: (API_VERSION == 1 ? info.system : info.id), game: info.name }); } DiceBot.diceBotInfosIndexed.push(group); DiceBot.diceBotInfosIndexed.sort((a, b) => a.index == b.index ? 0 : a.index < b.index ? -1 : 1); } }); - } else { - /* - DiceBot.diceBotInfos.forEach((info) => { - let normalize = info.sort_key.normalize('NFKD'); - for (let replaceData of DiceBot.replaceData) { - if (replaceData[2] && info.game === replaceData[0]) { - normalize = replaceData[1]; - info.game = replaceData[2]; - } - normalize = normalize.split(replaceData[0].normalize('NFKD')).join(replaceData[1].normalize('NFKD')); - } - normalize = normalize.replace(/[\u3041-\u3096]/g, m => String.fromCharCode(m.charCodeAt(0) + 0x60)) - .replace(/第(.+?)版/g, 'タイ$1ハン') - .replace(/[・!?!?\s ::==\//()\(\)]+/g, '') - .replace(/([アカサタナハマヤラワ])ー+/g, '$1ア') - .replace(/([イキシチニヒミリ])ー+/g, '$1イ') - .replace(/([ウクスツヌフムユル])ー+/g, '$1ウ') - .replace(/([エケセテネヘメレ])ー+/g, '$1エ') - .replace(/([オコソトノホモヨロ])ー+/g, '$1オ') - .replace(/ン+ー+/g, 'ン') - .replace(/ン+/g, 'ン'); - info.sort_key = info.lang ? info.lang : normalize.normalize('NFKD'); - //return info; - //console.log(info.index + ': ' + normalize); - }); - DiceBot.diceBotInfos.sort((a, b) => { - if (a.sort_key == 'Other' && b.sort_key == 'Other') { - return 0; - } else if (a.sort_key == 'Other') { - return 1; - } else if (b.sort_key == 'Other') { - return -1; - } - return a.sort_key == b.sort_key ? 0 - : a.sort_key < b.sort_key ? -1 : 1; - }); - let sentinel = DiceBot.diceBotInfos[0].sort_key[0]; - let group = { index: sentinel, infos: [] }; - for (let info of DiceBot.diceBotInfos) { - if (info.lang == 'Other') info.lang = '简体中文'; //手抜き - if ((info.lang ? info.lang : info.sort_key[0]) !== sentinel) { - sentinel = info.lang ? info.lang : info.sort_key[0]; - DiceBot.diceBotInfosIndexed.push(group); - group = { index: sentinel, infos: [] }; - } - group.infos.push({ id: info.id, game: info.game }); - } - DiceBot.diceBotInfosIndexed.push(group); - */ } - //DiceBot.diceBotInfosIndexed.sort((a, b) => a.index == b.index ? 0 : a.index < b.index ? -1 : 1); Network.setApiKey(event.data.webrtc.key); Network.open(); }) diff --git a/src/app/class/dice-bot.ts b/src/app/class/dice-bot.ts index 675d44a2..8298b9df 100644 --- a/src/app/class/dice-bot.ts +++ b/src/app/class/dice-bot.ts @@ -52,7 +52,7 @@ export class DiceBot extends GameObject { //public static loader = new BCDiceLoader(); public static apiUrl: string = null; - public static apiVersion: number = 1; + public static apiVersion: number = 2; public static adminUrl: string = null; public static diceBotInfos: DiceBotInfo[] = []; diff --git a/src/app/service/app-config.service.ts b/src/app/service/app-config.service.ts index e5e099de..4b18d7ba 100644 --- a/src/app/service/app-config.service.ts +++ b/src/app/service/app-config.service.ts @@ -43,7 +43,7 @@ export class AppConfigService { }, dice: { url: '', - api: 1 + api: 2 } }