Files
krkr2doc/docs/kag3doc/contents/RClick.html
2016-09-08 17:50:19 +09:00

189 lines
8.4 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<!-- generated by to_html.pl from RClick.xml -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>右クリックサブルーチンについて</title>
<meta name="author" content="W.Dee" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<link href="browser.css" type="text/css" rel="stylesheet" title="吉里吉里関連リファレンス用標準スタイル" />
<link href="mailto:[email protected]" rev="Made" />
<link href="index.html" target="_top" rel="Start" title="トップページ" />
</head>
<body>
<h1><a id="id176" name="id176">右クリックサブルーチンとは</a>
</h1><div class="para"><div>
 マウスの右クリックで呼び出される KAG のサブルーチンです。<br />
 右クリックによってセーブ/ロードの画面を表示させたりするのに用います。<br />
</div></div>
<h1><a id="id177" name="id177">とりあえず例</a>
</h1><div class="para"><div>
 右クリックサブルーチンを作るには rclick タグを用います。このタグによって、右クリックをされたときに指定のサブルーチンを呼び出すか、あるいは、指定のラベルにジャンプするかを指定できます。<br />
<br />
 たとえば、rlick.ks に以下の内容を書いたとします。<br />
<br />
<code class="bq"><span class="weak">例:</span><br />*rclick<br />
@rclick&nbsp;jump=true&nbsp;storage=&quot;rclick.ks&quot;&nbsp;target=&quot;*exit&quot;&nbsp;enabled=true<br />
@current&nbsp;layer=message1<br />
@layopt&nbsp;layer=message0&nbsp;page=fore&nbsp;visible=false<br />
@layopt&nbsp;layer=message1&nbsp;page=fore&nbsp;visible=true<br />
@er<br />
ここは右クリックルーチン内です。<br />
[s]<br />
<br />
*exit<br />
@layopt&nbsp;layer=message1&nbsp;page=fore&nbsp;visible=false<br />
@layopt&nbsp;layer=message0&nbsp;page=fore&nbsp;visible=true<br />
@current&nbsp;layer=message0<br />
@rclick&nbsp;call=true&nbsp;storage=&quot;rclick.ks&quot;&nbsp;target=&quot;*rclick&quot;&nbsp;enabled=true<br />
@return<br />
</code>
<br />
 これで、たとえば、first.ks には以下の行を記述します。
<br />
<code class="bq">@rclick&nbsp;call=true&nbsp;storage=&quot;rclick.ks&quot;&nbsp;target=&quot;*rclick&quot;&nbsp;enabled=true<br />
</code>
<br />
<br />
 すると、右クリックで rclick.ks の *rclick が呼ばれるようになります。<br />
 上記の例の rclick.ks では、まず右クリックがされたら *exit にジャンプするように設定しています。これにより、右クリックサブルーチン内で右クリックを行えば元に戻ることができます。<br />
 メッセージレイヤ0 を非表示にしています。これにより、メッセージレイヤ0 になにか選択肢が表示されていても選択肢を選択できなくすることができます。<br />
 メッセージレイヤ1 を表示状態にし、そこに「ここは右クリックルーチン内です。」と表示し、そこで停止します。<br />
</div></div>
<h1><a id="id178" name="id178">難しい例</a>
</h1><div class="para"><div>
 右クリックサブルーチンとしては複雑な例を挙げますが、メッセージ履歴を見たり、セーブ・ロードができたりするものです。
<br />
<code class="bq"><span class="weak">例:</span><br />*sub1<br />
@tempsave<br />
;&nbsp;↑一時的に状態を保存<br />
@history&nbsp;output=false<br />
;&nbsp;↑メッセージ履歴への出力を無効に<br />
@mapdisable&nbsp;layer=0&nbsp;page=fore<br />
;&nbsp;↑クリッカブルマップをもし使っている場合はこのようにして無効化する<br />
@backlay<br />
@layopt&nbsp;layer=message1&nbsp;page=back&nbsp;visible=true<br />
;&nbsp;↑このサブルーチン内ではメッセージレイヤ1を使う<br />
@layopt&nbsp;layer=message0&nbsp;page=back&nbsp;visible=false<br />
@current&nbsp;layer=message1&nbsp;page=back<br />
@position&nbsp;left=0&nbsp;top=0&nbsp;width=640&nbsp;height=480<br />
@eval&nbsp;exp=&quot;f.r_first=true&quot;<br />
;&nbsp;↑このルーチンに入ったときにだけトランジションを行うように<br />
;<br />
*menu<br />
@er<br />
@nowait<br />
[link&nbsp;target=*hide]メッセージを消す[endlink][r]<br />
[link&nbsp;target=*history]メッセージ履歴を見る[endlink][r]<br />
[link&nbsp;target=*load]栞をたどる[endlink][r]<br />
[link&nbsp;target=*save]栞をはさむ[endlink][r]<br />
[link&nbsp;target=*gotostart]最初に戻る[endlink][r]<br />
[link&nbsp;target=*ret]戻る[endlink][r]<br />
@endnowait<br />
@current&nbsp;layer=message1&nbsp;page=fore<br />
@if&nbsp;exp=&quot;f.r_first&quot;<br />
@trans&nbsp;time=500&nbsp;rule=trans1&nbsp;vague=128<br />
@wt<br />
@endif<br />
@eval&nbsp;exp=&quot;f.r_first=false&quot;<br />
@s<br />
<br />
*ret<br />
;&nbsp;サブルーチンから戻る<br />
@tempload&nbsp;bgm=false&nbsp;se=false&nbsp;backlay=true<br />
@trans&nbsp;time=500&nbsp;rule=trans1&nbsp;vague=128<br />
@wt<br />
@return<br />
<br />
*hide<br />
;&nbsp;メッセージを消す<br />
@hidemessage<br />
@jump&nbsp;target=*menu<br />
<br />
*history<br />
;&nbsp;メッセージ履歴を見る<br />
@showhistory<br />
@jump&nbsp;target=*menu<br />
<br />
*load<br />
;&nbsp;栞をたどる<br />
;&nbsp;emb&nbsp;exp=&nbsp;....&nbsp;については&nbsp;<a target="main" class="jump" href="TJSTips.html">TJSをもっと使うために</a>&nbsp;を参照<br />
@er<br />
@nowait<br />
[link&nbsp;target=*lt0][emb&nbsp;exp=&quot;kag.getBookMarkPageName(0)&quot;][endlink][r]<br />
[link&nbsp;target=*lt1][emb&nbsp;exp=&quot;kag.getBookMarkPageName(1)&quot;][endlink][r]<br />
[link&nbsp;target=*lt2][emb&nbsp;exp=&quot;kag.getBookMarkPageName(2)&quot;][endlink][r]<br />
[link&nbsp;target=*lt3][emb&nbsp;exp=&quot;kag.getBookMarkPageName(3)&quot;][endlink][r]<br />
[link&nbsp;target=*lt4][emb&nbsp;exp=&quot;kag.getBookMarkPageName(4)&quot;][endlink][r]<br />
[link&nbsp;target=*menu]戻る[endlink][r]<br />
@endnowait<br />
@s<br />
<br />
*lt0<br />
@load&nbsp;place=0&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*lt1<br />
@load&nbsp;place=1&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*lt2<br />
@load&nbsp;place=2&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*lt3<br />
@load&nbsp;place=3&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*lt4<br />
@load&nbsp;place=4&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
<br />
*save<br />
;&nbsp;栞をはさむ<br />
;&nbsp;emb&nbsp;exp=&nbsp;....&nbsp;については&nbsp;<a target="main" class="jump" href="TJSTips.html">TJSをもっと使うために</a>&nbsp;を参照<br />
@er<br />
@nowait<br />
[link&nbsp;target=*st0][emb&nbsp;exp=&quot;kag.getBookMarkPageName(0)&quot;][endlink][r]<br />
[link&nbsp;target=*st1][emb&nbsp;exp=&quot;kag.getBookMarkPageName(1)&quot;][endlink][r]<br />
[link&nbsp;target=*st2][emb&nbsp;exp=&quot;kag.getBookMarkPageName(2)&quot;][endlink][r]<br />
[link&nbsp;target=*st3][emb&nbsp;exp=&quot;kag.getBookMarkPageName(3)&quot;][endlink][r]<br />
[link&nbsp;target=*st4][emb&nbsp;exp=&quot;kag.getBookMarkPageName(4)&quot;][endlink][r]<br />
[link&nbsp;target=*menu]戻る[endlink][r]<br />
@endnowait<br />
@s<br />
<br />
*st0<br />
@save&nbsp;place=0&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*st1<br />
@save&nbsp;place=1&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*st2<br />
@save&nbsp;place=2&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*st3<br />
@save&nbsp;place=3&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
*st4<br />
@save&nbsp;place=4&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
<br />
<br />
*gotostart<br />
;&nbsp;「最初に戻る」<br />
@gotostart&nbsp;ask=true<br />
@jump&nbsp;target=*menu<br />
</code>
<br />
<br />
 このほか、栞データにサムネイル画像を保存する場合は若干の注意がありますので locksnapshot と unlocksnapshot タグを参照してください。<br />
</div></div>
<script type="text/javascript" charset="UTF-8" src="documentid.js" ></script>
<script type="text/javascript" charset="UTF-8" src="postcontent.js" ></script>
</body>
</html>