2011年12月24日星期六

KAG教學---TIME OUT,時間控制(2)

(建議在閱讀本篇教學之前,請先閱讀KAG教學---雨聲.人聲.敲門聲,播放音效(1) KAG教學---flag,變數(1)KAG教學---link和button的相同之處,選項(3)

有時候會看見一些遊戲設有時限的選項,當限時內不按下選項,劇情也會繼續下去,吉里吉里可以做到嗎?>( ゚ω゚ s)

(k ゚∀゚)<當然可以做到,吉里吉里有一個叫做[timeout]的,可以做到當指定時間內不按下選項,劇本就跳到指定位置,以下是範例。

[position page=fore layer=message0 left=0 top=320 height=160 width=640]
[image storage="bg1" page=fore layer=base]
以下是選項,限時是3秒。[p][cm]
[cm]
[link target=*select]選項[endlink][r]
[timeout time=3000 target=*timeout]
[s]

*select
[cm]
這是選項。
[s]

*timeout
[cm]
限時到了。

(k ゚∀゚)<我們在time屬性寫上限時的時間,以微秒(ms)為單位,target屬性寫上想跳到的label標籤。在上述的範例裡,如果不按下選項,3秒後就會跳到*timeout這label標籤。

是不是當執行[timeout]時就開始時限?吉里吉里怎樣知道何時要解除時限?>( ゚ω゚ s)

(k ゚∀゚)<不,[timeout]的時限是以到達[s]開始計算,這意味著沒有[s]的話,[timeout]就不會被執行,所以記得在[timeout]後面加上[s],而且當玩家離開了[s]的位置,時限就會被解除。

(k ゚∀゚)<如果想跳到另一個ks檔案,可以用storage屬性指定想跳到的檔案名稱,以下是範例。

first.ks
[position page=fore layer=message0 left=0 top=320 height=160 width=640]
[image storage="bg1" page=fore layer=base]
以下是選項,限時是3秒。[p][cm]
[cm]
[link target=*select]選項[endlink][r]
[timeout time=3000 storage="timeout.ks"]
[s]

*select
[cm]
這是選項。
[s]
timeout.ks
[cm]
限時到了。

(k ゚∀゚)<當只設定了storage而忽略target,吉里吉里會跳到檔案開頭,相反如果只設定了target而忽略storage,吉里吉里會在同一檔案尋找指定的標籤。

(k ゚∀゚)<我們亦可以用se屬性來加入音效,當時限到了時就會播放音效,對應的sebuf屬性則是設定其緩衝區,如果忽略這屬性,吉里吉里會預設為0,以下是範例。

[position page=fore layer=message0 left=0 top=320 height=160 width=640]
[image storage="bg1" page=fore layer=base]
以下是選項,限時是3秒。[p][cm]
[cm]
[link target=*select]選項[endlink][r]
[timeout time=3000 se="se1" target=*timeout]
[s]

*select
[cm]
這是選項。
[s]

*timeout
[cm]
限時到了。

(k ゚∀゚)<今次最後介紹的是exp屬性,當時限到了時就會執行TJS式。

什麼是TJS式?>( ゚ω゚ s)

(k ゚∀゚)<TJS式是指TJS的陳述句,之前介紹指定數值給變數是其中一種。以下是範例。

[position page=fore layer=message0 left=0 top=320 height=160 width=640]
[image storage="bg1" page=fore layer=base]
以下是選項,限時是3秒。[p][cm]
[cm]
[link target=*select exp="tf.flag1=1"]選項[endlink][r]
[timeout time=3000 exp="tf.flag1=2" target=*select]
[s]

*select
[cm]
tf.flag1的數值是
[emb exp="tf.flag1"]

(k ゚∀゚)<上述的範例中,當按下選項時,變數flag1的數值就變為1,當時限到了時就會變為2,這個在劇情分歧上有十分重要的作用。

(k ゚∀゚)<今次介紹到這裡,下次再見。

1 則留言: