這裏介紹一些krkr的語法規範,具體的命令含義及用法之後再敘述html
一:kag語法及基本概念spa
KAG使用的劇本語言爲KAG Script,文件擴展名爲.ks插件
腳本內的文字除 註釋, 命令 , 段落標籤, 等內容外,一概被看成 劇本文字 進行顯示處理。設計
每一個標籤均可能有若干屬性,也可能沒有屬性,屬性用於精確控制指令的行爲。3d
1:標記命令code
命令的格式爲:htm
[命令名 屬性1 = 值1 屬性2 = 值2]
例如:blog
[bg file=圖片1] 這裏設置了一張背景圖片 [r][I]
2:行命令遊戲
行命令通常單獨佔一行,用於較長的指令圖片
命令的格式爲:
@命令名 屬性1 = 值1 屬性2 = 值2...
這種語法格式要求一條指令 單獨 佔一行。
例如:
@bg file=圖1 這裏也設置了一張背景圖片[r][I]
與標記命令的執行結果是同樣的
3:段落標籤
段落標籤單獨佔一行,表明一個段落/章節的開始。
分支選項 劇本跳躍 進度的存取都以段落標籤爲標誌,劇本跳躍時,就只能跳躍到指定的段落標籤開始。(學過html的小夥伴可能會比較熟悉這個,與利用a標籤id屬性實現跳轉相似)
命令的格式爲:
1 *標籤名|顯示名
標籤名 是標籤的內部名稱,建議使用 簡單但不重複的 英文數字組合。
顯示名 是顯示在存檔界面等地方的名稱,能夠使用 較複雜 的中文名。
例如:
*ch01|第一章 這是第一章。[I][r]
4:註釋
以 ; 符號開始,從分號到該行結尾的全部內容將被忽略
註釋主要用於寫入開發者的備忘。代碼說明等內容。
例如:
1 *ch01|第一章 2 這是第一章。[I][r] ; 這是註釋1 3 ;這是註釋2
開發過程當中的全部代碼都要嚴格按照這些規範來進行。
二:關於漸變的類型、參數和使用
漸變效果是ADV製做中最常常用到的效果。ADV遊戲常常包含圖像的切換。若是毫無過渡的更換圖像,效果通常會顯得很是糟糕。於是,淡入、淡出等圖像效果幾乎是每個ADV遊戲必然會使用的。加入這些效果,能夠使得圖像的切換更加平滑,讓遊戲感受更加精細。
KAG中,淡入、淡出這些在必定的時間內改變圖像的功能都使用統一的漸變效果來實現。KAGeXpress的背景切換等效果,也被設計爲能夠調用漸變效果。使用的漸變效果的類型在KAGeXpress中均可以由method屬性指定。
KAG包含了多種的漸變方式。吉里吉里內核自嵌了3種類型的漸變,此外經過外部插件,還能夠增長新的漸變效果。
全部調用的漸變的指令都須要經過time屬性指定時間,對於KAGeXpress的圖像指令,未指定時間的漸變視做要求新的圖像直接出現。
如下的圖例中,A爲漸變前的圖像(下面稱做原圖像),B爲用來取代原圖像的目標圖像(下面稱做新圖像)。
1:crossfade
最簡單、最經常使用的漸變類型。要漸變的部分漸漸從原圖像變爲新圖像
無特別的屬性須要指定。
2:universal
一種獨特的漸變類型。能夠按照使用者的要求,按照任意順序與方式漸變整個區域。
使用時,必須提供一個規則文件,指定漸變的規則。該文件必須是灰階的圖像。
請看如下的樣圖。
系統將按照這個規則文件的灰度,從對應規則文件黑色的部分漸漸漸變到對應白色部分。
對於上述的規則文件,系統將從上到下(對應規則文件中從黑到白)將屏幕上的A漸變爲B。
此外,這種類型的漸變能夠設定漸變區域屬性(vague屬性),指定過渡區域(也就是轉換中,同時顯示出原圖像和新圖像的區域)的大小。
漸變效果不明顯
指定不一樣vague值產生的差異能夠參看上圖。
對於KAGeXpress,默認的vague值爲64。
下面是universal漸變屬性詳細列表:
universal漸變的使用的屬性列表 | |||
---|---|---|---|
屬性名稱 | 是否必須 | 說明 | |
rule | 是 | 指定決定通用漸變的軌跡的,規則文件的名稱。 該文件必須是灰度圖像數據。 系統將從該圖像中黑色部分所對應的原圖部分開始漸變,漸漸按照順序開始處理圖像中白色的部分。 |
|
vague | 否 | 決定過渡區域,也就是同時進行轉換的區域的大小。 |
3:scroll
scroll類型的漸變,如同其字面意思同樣,就是讓新圖像從外面移動進入原圖像的區域。
新的圖像能夠任意選擇從上、下、左、右四個方向中的任意一個進入,這個效果能夠經過from屬性指定。
本節講解scroll時使用的樣圖,進入方向都爲下,也就是從下方進入屏幕。
此外,實際上scroll漸變的類型還包括三種,由參數stay控制。
這是stay=stayfore的場合。
這是stay=stayback的場合
這是stay=nostay的場合。
三種不一樣的效果如上圖所示。
首先,stay=stayfore時,原圖像將原地不動,而新圖像從外向裏移動。當進入方向是從下方進入時,看起來是如同下圖這樣的。
stay=stayback時,原圖像將從進入方向的反方向被抽走,而露出沒有移動的新圖像。
stay=nostay時,原圖像和新圖像將同時向同一方向移動,直到新圖像取代舊圖像。
下面是scroll漸變屬性詳細列表:
scroll漸變的使用的屬性列表 | |||
---|---|---|---|
屬性名稱 | 是否必須 | 說明 | |
stay | 否 | stay=nostay時,原圖像和新圖像將按相同速度向同一方向移動,直到新圖像代替舊圖像。 stay=stayfore時,原圖像將不會移動,新圖像會自外移動進來並覆蓋元圖像。 stay=stayback時,新圖像將不會移動,原圖像會被抽走,而後露出新圖像。 |
|
from | 是 | 指定爲left、right、top、bottom,分別可讓新圖像從左、右、上、下方向捲入屏幕。 |