teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

記事タイトル変更

2018/02/27 21:47

投稿

nosonosolife
nosonosolife

スコア42

title CHANGED
@@ -1,1 +1,1 @@
1
- スロットゲームのリール制御機能の追加たい
1
+ スロットゲームのリールを4つの絵柄分移動させてから停止させたい
body CHANGED
File without changes

1

追記

2018/02/27 21:46

投稿

nosonosolife
nosonosolife

スコア42

title CHANGED
File without changes
body CHANGED
@@ -9,8 +9,8 @@
9
9
  ・リールを4コマ滑らせてから止める
10
10
  現在のコードでは画面内に当たった絵柄が表示されるまで止まりませんが、実際のスロットではボタンを押した瞬間の位置から4コマ(4つの絵柄)以内に滑らせてから停止させているようですので、
11
11
  ボタンを押した瞬間の位置から4つの絵柄の内に当たった絵柄がない場合、強制的に停止させるようにしたいです。
12
- ・停止位置を横三つ斜め二つに対応させる
12
+ ~~・停止位置を横三つ斜め二つに対応させる~~
13
- 現在、当たり絵柄の停止位置は中央の横3つにしか対応していませんが、上下横・左右斜め3つにも対応させたいです。
13
+ ~~現在、当たり絵柄の停止位置は中央の横3つにしか対応していませんが、上下横・左右斜め3つにも対応させたいです。~~
14
14
 
15
15
  上手く説明できていない部分がありましたら申し訳ございません。どうかご教授よろしくお願いいたします。
16
16
  【ソースコード】※質問内容と関係のない部分は省いています
@@ -317,4 +317,26 @@
317
317
  </div>
318
318
  </body>
319
319
  </html>
320
- ```
320
+ ```
321
+
322
+ 【追記】
323
+ 「・停止位置を横三つ斜め二つに対応させる」は
324
+ ```JavaScript
325
+ var stopLineArray = [[1,1,1],[0,0,0],[2,2,2],[0,1,2],[2,1,0]]; //停止ライン配列
326
+ var stopLineId = 0;
327
+ ```
328
+ このような変数を作って、
329
+ ```JavaScript
330
+ function winLottery() {
331
+ //省略
332
+ stopLineId = Math.floor(Math.random()*stopLineArray.length);
333
+ //省略
334
+ }
335
+
336
+ function slotMove() {
337
+ //省略
338
+ if (!reelStopFlg[i] || reelposY[i] % iconHeight || winIconArray[i][(-reelposY[i] / iconHeight)+stopLineArray[stopLineId][i]] != 1) {
339
+ //省略
340
+ }
341
+ ```
342
+ こうしたところ上手くいきました。