忍者ブログ

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【Hiyu&Rava】常用KAG函式介紹2 - 連結篇

 

 

這次介紹的重要功能,在文字冒險類遊戲中不可或缺的項目--「選項(亦可稱呼為分支)」--讓玩家去選擇劇情的走向。
吉里吉里內可以做到這效果的指令分別為圖像式的「button」和純文字的「link」兩種。
 

指令屬性

[link]
color (0xRRGGBB) 滑鼠在連結上或點擊狀態時的顏色

[button]
graphic (圖像檔案名稱)
graphickey (0xRRGGBB) 會透明化的顏色
recthit (true/false) true的話圖像透明部份會有反應,反之在64或以下的透明部分不會導滑鼠起反應

[共通]
storage (腳本檔名) 要連結到的目標檔案的位置
target (標籤) 要跳到去的位置
exp (TJS) 點擊時會實行式子再跳到目標
hint (字串) 用來顯示提示
onenter (TJS) 滑鼠進入範圍內時會實行的式子
onleave (TJS) 滑鼠離開範圍內時會實行的式子
countpage (true/false) 指定為已讀與否
clickse (聲音檔名) 滑鼠點擊時發出的音效
clicksebuf (數字) 指定音效buffer編號
enterse (聲音檔名) 滑鼠進入時發出的音效
entersebuf (數字) 指定音效buffer編號
leavese (聲音檔名) 滑鼠離開時發出的音效
leavesebuf (數字) 指定音效buffer編號


使用方式

以下是簡單的 link 範例,顯示選項讓玩家選擇而繼續進行的方式。
 

*start|開始
; 清除畫面
[cm]
[link target=*select1]選項1[endlink][r]
[link target=*select2]選項2[endlink][r]
[link target=*select3]選項3[endlink][r]
;停止遊戲 等待玩家動作
[s]

*select1
; 斷行
[r]選擇了第1個項目[l]
[s]

*select2
; 斷行
[r]選擇了第2個項目[l]
[s]

*select3
; 斷行
[r]選擇了第3個項目[l]
[s]

效果圖:
 


連給目標不限制同一檔案,想連結到別的檔案去可以用這種方法:
[link target = ”*任意label” storage = “檔名.ks”]

如果不喜歡這種固定顯示連結的話,可以在 link 指令前加上 [locate x=數字 y=數字] 這指令來指定顯示位置。


按鈕格式

吉里吉里的按鈕圖像格式是由3種圖像並連起來的。
由左至由分別是:普通狀態-滑鼠正在點擊-滑鼠在範圍內。



用法和 Link 相近,大多數用在標題畫面、系統按鈕等地方以美化畫面。


簡單例子

[ title.jpg ]

[ 內碼 ]

*start|開始
[iscript]
// 將背景填滿白色
// 圖層.填滿(左, 上, 闊, 高, 色碼);
kag.fore.base.fillRect(0, 0, 800, 600, 0xffffff);
[endscript]

[locate x = 100 y = 100]
[button graphic = title storage = title.ks target = *start hint = 開始遊戲]
[s]

效果:



滑鼠在按鈕上及顯示提示文字



確認方塊和輸入欄

接下來的部分就是玩 AVG 時很大機會會看到的功能--名字輸入。
詳細解釋不如直接用例子作說明比較容易理解,可以先看下圖的範例。



( 可以把下面內碼貼到新的吉里吉里project內執行看看效果 )

內碼:


*start|開始
[cm]
輸入名字後要顯示嗎? :  [checkbox name="f.showname"]
[r][r]
名字 : [edit name="f.sname" length=200 maxchars="8"]
[r][r]
[link target=*ok]OK[endlink]     [link target=*cancel]Cancel[endlink][s]

*ok
; commit 會將代數代入
[commit]
[cm]
;選擇顯示,才會顯示輸入了的名字
[if exp=f.showname]
[r][r]
輸入的名字是: [emb exp=f.sname][l]
[endif]
[r]成功輸入[l]
[jump target=*repeart]

*cancel
; cancel
[cm][r][r]
選擇取消[l]

*repeart
[jump storage="first.ks" target="*start"]

由上面的內碼可以看出,使用 checkbox 和 edit 時一定要配合 commit一起用上,否則代數不會有變化。edit 和 checkbox 可以指定背景顏色 (bgcolor) ;而 edit 可以指定文字顏色 ( color ) 和限制字數。

 

 

 

拍手[3回]

PR

この記事にコメントする

お名前
タイトル
メール
URL
コメント
絵文字
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
パスワード

この記事へのトラックバック

この記事にトラックバックする