Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions src-ui/js/ui/KeyPopup.js
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@ ui.keypopup = {
aqre: [10, 0],
doppelblock: [10, 115],
japanesesums: [10, 115],
jatahoku: [80, 138],
interbd: [116, 0],
toichika2: [10, 10],
crossstitch: [10, 0],
Expand Down Expand Up @@ -274,6 +275,14 @@ ui.keypopup = {
//---------------------------------------------------------------------------
display: function() {
var mode = ui.puzzle.editmode ? 1 : 3;
if (
ui.puzzle.pid === "jatahoku" &&
mode === 3 &&
this.jatahokuCount !== ui.puzzle.board.indicator.count
) {
this.createtable(3);
this.resizepanel();
}
if (
this.element &&
!!this.paneltype[mode] &&
Expand Down Expand Up @@ -433,6 +442,8 @@ ui.keypopup = {
this.generate_slovak(mode);
} else if (type === 137) {
this.generate_mrokmrno(mode);
} else if (type === 138) {
this.generate_jatahoku();
} else if (type === 5339) {
this.generate_swslither();
}
Expand Down Expand Up @@ -644,6 +655,21 @@ ui.keypopup = {
4
);
},
generate_jatahoku: function() {
var count = ui.puzzle.board.indicator.count,
mbcolor = ui.puzzle.painter.mbcolor,
items = [
["q", { text: "○", color: mbcolor }],
["w", { text: "×", color: mbcolor }],
" ",
null
];
for (var n = 1; n <= count; n++) {
items.push("" + n);
}
this.jatahokuCount = count;
this.generate_main(items, 4);
},

//---------------------------------------------------------------------------
// kp.generate_slalom() スラローム用のテーブルを作成する
Expand Down
1 change: 1 addition & 0 deletions src-ui/list.html
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,7 @@ <h2 id="title"><span lang="ja">パズルの種類のリスト</span><span lang="
<li data-pid="numcity"></li>
<li data-pid="topo"></li>
<li data-pid="suguru"></li>
<li data-pid="jatahoku"></li>
</ul>
</div>
<div class="lists others">
Expand Down
9 changes: 9 additions & 0 deletions src-ui/res/rules.en.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -563,3 +563,12 @@ seiza: |-
2. Lines must be drawn perpendicular to the edges of cells and must not turn or overlap each other.
3. Each number in a region represents how many lines are drawn from the star in that region.
4. Stars and lines cannot overlap black cells.
jatahoku: |-
Enter one number into some of the empty cells.
1. Every row, column, and outlined block must contain each number from 1 through X exactly once, where X is shown as “[1-X]” at the top-left of the grid.
2. All numbered cells must be orthogonally connected.
3. Numbered cells cannot form a 2×2 block.
4. A number in a gray cell gives the length of a consecutive group of numbered cells among its eight surrounding cells. Multiple clues are unordered and their groups are separated by at least one unnumbered cell.
5. Clues above and to the left of the grid give, in order, the sums of consecutive groups of numbered cells in that column or row. Groups are separated by at least one unnumbered cell.
6. For the top and left clues, “?” represents an unknown one-digit sum and “??” represents an unknown two-digit sum.
7. Clues below and to the right give the number of visible buildings when cell numbers are treated as building heights. Unnumbered cells do not block the view.
9 changes: 9 additions & 0 deletions src-ui/res/rules.ja.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -429,3 +429,12 @@ seiza: |-
2. 線はタテまたはヨコ一直線に引きます。線の両端は星になり、星以外のマスに2本以上の線が通ることはありません。
3. エリアの小さな数は、そのエリアの中の星から出る線の数を表します。
4. 黒マスに星を配置することはできません。また、線が通ることもできません。
jatahoku: |-
空いているいくつかのマスに数字を1つずつ書き込みます。
1. タテヨコの各列と太線で囲まれたすべてのブロックで、1~X(盤面左上の「[1-X]」で指定)の数字が1つずつ入るようにします。
2. 数字の入るマスはタテヨコにひとつながりになります。
3. 数字の入るマスが2×2のカタマリになってはいけません。
4. グレーのマスの数字は、周囲の最大8マスにある、連続してつながった数字マスの数を表します。複数の数字は順不同で、それぞれの間に数字のないマスが1つ以上入ります。
5. 盤面の上と左の数字は、その列で連続して入る数字の和を、上から下または左から右の順に表します。複数の和の間には数字のないマスが1つ以上入ります。
6. 上と左の「?」は1桁の数、「??」は2桁の数を表します。
7. 盤面の下と右の数字は、マスの数字をビルの高さとして、その場所から見えるビルの数を表します。数字のないマスは視線を遮りません。
1 change: 1 addition & 0 deletions src/pzpr/variety.js
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,7 @@
island: [0, 0, "アイランド", "Inaba's Island", "kurotto"],
isowatari: [0, 0, "イソワタリ", "Isowatari"],
japanesesums: [0, 0, "Japanese Sums", "Japanese Sums"],
jatahoku: [0, 0, "JaTaHoKu", "JaTaHoKu"],
juosan: [0, 0, "縦横さん", "Juosan"],
kaero: [1, 0, "お家に帰ろう", "Return Home"],
kaidan: [0, 0, "かいだんしばり", "Stairwell"],
Expand Down
9 changes: 8 additions & 1 deletion src/res/failcode.en.json
Original file line number Diff line number Diff line change
Expand Up @@ -1017,5 +1017,12 @@
"tentAround.tents": "Some tents touch.",
"tooFewUnspecified.railpool": "The region contains fewer unspecified segment lengths than question marks.",
"tooManyUnspecified.railpool": "The region contains more unspecified segment lengths than question marks.",
"unusedCell": "A cell is unused."
"unusedCell": "A cell is unused.",
"bkMissNum.jatahoku": "A number is missing from a block.",
"ceTapaNe.jatahoku": "A gray clue does not match the groups of surrounding numbered cells.",
"nm2x2.jatahoku": "There is a 2x2 block of numbered cells.",
"nmMissRow.jatahoku": "A number is missing from a row or column.",
"nmRange.jatahoku": "A number is outside the specified range.",
"nmSightNe.jatahoku": "The number of visible buildings is wrong.",
"nmSumOrderRowNe.jatahoku": "The sums of consecutive numbered cells do not match the outside clues."
}
9 changes: 8 additions & 1 deletion src/res/failcode.ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -969,5 +969,12 @@
"bk2x2": "",
"nmArrowGt": "",
"cuGt3.sansaroad": "",
"cePluralLine.bunnyhop": ""
"cePluralLine.bunnyhop": "",
"bkMissNum.jatahoku": "ブロックに入っていない数字があります。",
"ceTapaNe.jatahoku": "グレーのヒントと周囲の数字マスのつながり方が一致していません。",
"nm2x2.jatahoku": "数字の入るマスが2×2のカタマリになっています。",
"nmMissRow.jatahoku": "行または列に入っていない数字があります。",
"nmRange.jatahoku": "数字が指定された範囲外です。",
"nmSightNe.jatahoku": "見えるビルの数が正しくありません。",
"nmSumOrderRowNe.jatahoku": "数字マスの連続区間の和が、枠外のヒントと一致していません。"
}
Loading
Loading