【ティラノスクリプト 交流掲示板】 1722739


HTML5ゲームエンジン、「ティラノスクリプト」に関する掲示板です

質問を書き込む前に

こんな機能ないかな?と思った時
ティラノスクリプトのタグリファレンス

ティラノWikiも確認
http://tyrano.wiki.fc2.com/

バグ報告や質問、要望などご自由にお使い下さい。


質問用スレッドPart3

1:シケモクMK :

2017/01/27 (Fri) 23:29:39


ティラノスクリプトに関するわからない事がありましたら、お気軽にどうぞ。
ティラノビルダーに関する質問はビルダー掲示板でお願いします→http://tyranobuilder.bbs.fc2.com/

■質問する前に
他のスレで解決していないかの確認をお願いします。

質問用スレッドpart1
http://tyrano.bbs.fc2.com/?act=reply&tid=6151309

質問用スレッドpart2
http://tyrano.bbs.fc2.com/?act=reply&tid=8375254

ティラノWiki や Googleでの調査も事前に確認をお願いします。

ティラノスクリプト 製作テクニックWiki
http://tyrano.wiki.fc2.com/

541:初心者W :

2017/12/30 (Sat) 14:56:16

度々お世話になります。
ミニゲームでカードゲームを仕込みたいと思っており、次のようにスクリプトを記述しました。

1、画面上に3枚のカードを表示する
2、カードにカーソルを合わせると色が変わる
3、カードをクリックするとランダムで3種類のカードが表示される
4、カードの表面が表示された後、クリックするとカードが非表示になる
5、次のカードが表示され、全体で3回カードが表示される
6、カードの合計ポイントで合否判定をする

以下の記述ですと、1回目のカードは表示されるのですが、2回目から「2、カーソルを合わせると色が変わる」までは動くのですが、カードをクリックしてもそれ以上動きません。
ティラノライダーのコンソールでは[s]タグで停止しているのですが、原因が分かりません。
なお、1回目部分の記述をコメントアウトして2回目部分から動かすと、カードの絵柄が変わるので、選択肢を複数回繋げる中で何か間違えているのではないかと思うのですが…。
記述が長くて申し訳ありませんが、お力添えを頂けると幸いです。
(実際のミニゲームでは乱数を1〜9で発生させ、カードも9パターンあります)

■■■以下、実際に書いたスクリプトです■■■■■■■■■■■■■■■■■■■■■

;=========================================
; 変数 f.cardgame_point を宣言 最初は0ポイントから
; 選択肢の結果、加算ポイントを管理する変数
;=========================================
[eval exp="f.cardgame_point=0"]


;=========================================
; カードの種類の説明
;=========================================

;card_01.png:カードの裏面
;card_02.png:カードの裏面(色差分)
;card_03.png:カードの表面 100点
;card_04.png:カードの表面 120点
;card_05.png:カードの表面 150点

;=========================================
; カード表示 1回目
;=========================================

[button name="card01_l" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card01_l" x=120 y=50 fix=true]
[button name="card01_c" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card01_c" x=320 y=50 fix=true]
[button name="card01_r" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card01_r" x=520 y=50 fix=true]


[s]

;=========================================
; カード選択 1回目(左)
;=========================================

*card01_l
;■■■ランダム数値の取り出し
[iscript]
tf.card01_l = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card01_l==1"]
[button name="card01_l" graphic="card/card_03.png" x=120 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_01]

[elsif exp="tf.card01_l==2"]
[button name="card01_l" graphic="card/card_04.png" x=120 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_01]

[elsif exp="tf.card01_l==3"]
[button name="card01_l" graphic="card/card_05.png" x=120 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_01]

[else]
[endif]

;=========================================
; カード選択 1回目(中央)
;=========================================

*card01_c
;■■■ランダム数値の取り出し
[iscript]
tf.card01_c = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card01_c==1"]
[button name="card01_c" graphic="card/card_03.png" x=320 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_01]

[elsif exp="tf.card01_c==2"]
[button name="card01_c" graphic="card/card_04.png" x=320 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_01]

[elsif exp="tf.card01_c==3"]
[button name="card01_c" graphic="card/card_05.png" x=320 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_01]

[else]
[endif]


;=========================================
; カード選択 1回目(右)
;=========================================

*card01_r
;■■■ランダム数値の取り出し
[iscript]
tf.card01_r = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card01_r==1"]
[button name="card01_r" graphic="card/card_03.png" x=520 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_01]

[elsif exp="tf.card01_r==2"]
[button name="card01_r" graphic="card/card_04.png" x=520 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_01]

[elsif exp="tf.card01_r==3"]
[button name="card01_r" graphic="card/card_05.png" x=520 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_01]

[else]
[endif]


;=========================================
; カード選択 1回目 結果
;=========================================

*cardgame_01

;カードを非表示にする

[clearfix name="card01_l"]
[clearfix name="card01_c"]
[clearfix name="card01_r"]

;=========================================
; カード選択 1回目 終了
;=========================================

;=========================================
; カード表示 2回目
;=========================================

[button name="card02_l" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card02_l" x=120 y=50 fix=true]
[button name="card02_c" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card02_c" x=320 y=50 fix=true]
[button name="card02_r" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card02_r" x=520 y=50 fix=true]


[s]

;=========================================
; カード選択 2回目(左)
;=========================================

*card02_l
;■■■ランダム数値の取り出し
[iscript]
tf.card02_l = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card02_l==1"]
[button name="card02_l" graphic="card/card_03.png" x=120 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_02]

[elsif exp="tf.card02_l==2"]
[button name="card02_l" graphic="card/card_04.png" x=120 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_02]

[elsif exp="tf.card02_l==3"]
[button name="card02_l" graphic="card/card_05.png" x=120 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_02]

[else]
[endif]

;=========================================
; カード選択 2回目(中央)
;=========================================

*card02_c
;■■■ランダム数値の取り出し
[iscript]
tf.card02_c = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card02_c==1"]
[button name="card02_c" graphic="card/card_03.png" x=320 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_02]

[elsif exp="tf.card02_c==2"]
[button name="card02_c" graphic="card/card_04.png" x=320 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_02]

[elsif exp="tf.card02_c==3"]
[button name="card02_c" graphic="card/card_05.png" x=320 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_02]

[else]
[endif]


;=========================================
; カード選択 2回目(右)
;=========================================

*card02_r
;■■■ランダム数値の取り出し
[iscript]
tf.card02_r = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card02_r==1"]
[button name="card02_r" graphic="card/card_03.png" x=520 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_02]

[elsif exp="tf.card02_r==2"]
[button name="card02_r" graphic="card/card_04.png" x=520 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_02]

[elsif exp="tf.card02_r==3"]
[button name="card02_r" graphic="card/card_05.png" x=520 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_02]

[else]
[endif]


;=========================================
; カード選択 2回目 結果
;=========================================

*cardgame_02

;カードを非表示にする

[clearfix name="card02_l"]
[clearfix name="card02_c"]
[clearfix name="card02_r"]

;=========================================
; カード選択 2回目 終了
;=========================================

;=========================================
; カード表示 3回目
;=========================================

[button name="card03_l" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card03_l" x=120 y=50 fix=true]
[button name="card03_c" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card03_c" x=320 y=50 fix=true]
[button name="card03_r" graphic="card/card_01.png" enterimg="card/card_02.png" target="*card03_r" x=520 y=50 fix=true]


[s]

;=========================================
; カード選択 3回目(左)
;=========================================

*card03_l
;■■■ランダム数値の取り出し
[iscript]
tf.card03_l = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card03_l==1"]
[button name="card03_l" graphic="card/card_03.png" x=120 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_03]

[elsif exp="tf.card03_l==2"]
[button name="card03_l" graphic="card/card_04.png" x=120 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_03]

[elsif exp="tf.card03_l==3"]
[button name="card03_l" graphic="card/card_05.png" x=120 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_03]

[else]
[endif]

;=========================================
; カード選択 3回目(中央)
;=========================================

*card03_c
[iscript]
tf.card03_c = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card03_c==1"]
[button name="card03_c" graphic="card/card_03.png" x=320 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_03]

[elsif exp="tf.card03_c==2"]
[button name="card03_c" graphic="card/card_04.png" x=320 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_03]

[elsif exp="tf.card03_c==3"]
[button name="card03_c" graphic="card/card_05.png" x=320 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_03]

[else]
[endif]


;=========================================
; カード選択 3回目(右)
;=========================================

*card03_r
;■■■ランダム数値の取り出し
[iscript]
tf.card03_r = Math.floor( Math.random() * 3) + 1
[endscript]

;■■■カードを表示
[if exp ="tf.card03_r==1"]
[button name="card03_r" graphic="card/card_03.png" x=520 y=50 fix=true]
『100点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+100"]
[jump target=*cardgame_03]

[elsif exp="tf.card03_r==2"]
[button name="card03_r" graphic="card/card_04.png" x=520 y=50 fix=true]
『120点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+120"]
[jump target=*cardgame_03]

[elsif exp="tf.card03_r==3"]
[button name="card03_r" graphic="card/card_05.png" x=520 y=50 fix=true]
『150点』[p]
[eval exp="f.cardgame_point=f.cardgame_point+150"]
[jump target=*cardgame_03]

[else]
[endif]


;=========================================
; カード選択 3回目 結果
;=========================================

*cardgame_03

;カードを非表示にする

[clearfix name="card03_l"]
[clearfix name="card03_c"]
[clearfix name="card03_r"]

;=========================================
; カード選択 3回目 終了
;=========================================

;=========================================
; 合否判定
;=========================================

;■■■合計金額を表示
合計金額は [emb exp="f.cardgame_point"] 点です。320点以内で合格です。[p]

;■■■判定
[if exp ="f.cardgame_point<=320"]
達成です。[p]
[else]
オーバーです。[p]
[endif]
[jump storage="next.ks"]

  • 名前: E-mail(省略可):
  • 画像:

Copyright © 1999- FC2, inc All Rights Reserved.