diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-03-10 13:42:26 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-03-10 13:42:26 +0900 |
| commit | c3a2330569e69ca81e929b6b3416bea05d0247a3 (patch) | |
| tree | 37e5033ec1d8a0d4f048b9451aa83a3c38922d52 /src/web/app/common | |
| parent | :v: (diff) | |
| download | misskey-c3a2330569e69ca81e929b6b3416bea05d0247a3.tar.gz misskey-c3a2330569e69ca81e929b6b3416bea05d0247a3.tar.bz2 misskey-c3a2330569e69ca81e929b6b3416bea05d0247a3.zip | |
#1225
Diffstat (limited to 'src/web/app/common')
| -rw-r--r-- | src/web/app/common/views/components/othello.room.vue | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/web/app/common/views/components/othello.room.vue b/src/web/app/common/views/components/othello.room.vue index 6c8ce16531..745074b17a 100644 --- a/src/web/app/common/views/components/othello.room.vue +++ b/src/web/app/common/views/components/othello.room.vue @@ -5,6 +5,7 @@ <p>ゲームの設定</p> <el-select class="map" v-model="mapName" placeholder="マップを選択" @change="onMapChange"> + <el-option label="ランダム" :value="null"/> <el-option-group v-for="c in mapCategories" :key="c" :label="c"> <el-option v-for="m in maps" v-if="m.category == c" :key="m.name" :label="m.name" :value="m.name"> <span style="float: left">{{ m.name }}</span> @@ -13,7 +14,7 @@ </el-option-group> </el-select> - <div class="board" :style="{ 'grid-template-rows': `repeat(${ game.settings.map.length }, 1fr)`, 'grid-template-columns': `repeat(${ game.settings.map[0].length }, 1fr)` }"> + <div class="board" v-if="game.settings.map != null" :style="{ 'grid-template-rows': `repeat(${ game.settings.map.length }, 1fr)`, 'grid-template-columns': `repeat(${ game.settings.map[0].length }, 1fr)` }"> <div v-for="(x, i) in game.settings.map.join('')" :class="{ none: x == ' ' }" @click="onPixelClick(i, x)" @@ -124,12 +125,20 @@ export default Vue.extend({ onUpdateSettings(settings) { this.game.settings = settings; - const foundMap = Object.entries(maps).find(x => x[1].data.join('') == this.game.settings.map.join('')); - this.mapName = foundMap ? foundMap[1].name : '-Custom-'; + if (this.game.settings.map == null) { + this.mapName = null; + } else { + const foundMap = Object.entries(maps).find(x => x[1].data.join('') == this.game.settings.map.join('')); + this.mapName = foundMap ? foundMap[1].name : '-Custom-'; + } }, onMapChange(v) { - this.game.settings.map = Object.entries(maps).find(x => x[1].name == v)[1].data; + if (v == null) { + this.game.settings.map = null; + } else { + this.game.settings.map = Object.entries(maps).find(x => x[1].name == v)[1].data; + } this.$forceUpdate(); this.updateSettings(); }, |