■吉里吉里/KAG/TJS雑談質問スレ■その5
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
04/09/15 02:43:06ID:lnIfU+bZ本家BBSで聞きづらい質問や初歩的な質問などでもよいのでわからないことがあればどうぞ。
自分のゲームの進行状況や製作ツール等についての話、TJS等の質問もお待ちしています。
マルチポストはやめましょう。個人叩きも禁止です。
4(タイトルは3) http://pc5.2ch.net/test/read.cgi/gamedev/1081199649/
3 http://pc5.2ch.net/test/read.cgi/gamedev/1067436686/
2(再利用) http://pc2.2ch.net/test/read.cgi/gamedev/1044256119/
1 http://pc2.2ch.net/test/read.cgi/gamedev/1021890648/
【公式】
kikyou.info
http://kikyou.info/
吉里吉里ダウンロードページ
http://kikyou.info/tvp/
0653名前は開発中のものです。
05/02/10 14:40:23ID:IXRBWOmh0654名前は開発中のものです。
05/02/11 00:48:08ID:Cn+Bwtcy展開ツールに一旦ファイルの形で書き出させて、
吉里吉里がそれを読み込むって方法なら
ヨユーでできるって思うよ。
ただし展開に失敗とか時間がかかってるとかの対策が
色々必要になるとは思うけど。
0655名前は開発中のものです。
05/02/11 01:22:03ID:rSqiLvts>展開ツールに一旦ファイルの形で書き出させて、
一時ファイルを、HDDに書き出さないで、なんとか処理できないものだろうか
圧縮データ → 一時ファイル → 表示用バッファに取得 → 表示処理
ではなくて、
圧縮データ → 表示用バッファに取得 → 表示処理
って感じに、データを取り扱いたい。
具体的には、
PrintScreenを打鍵したときのバッファ等に、
目標の、圧縮データから、
目標の画像データを、展開ツールで出力
↓
同、バッファのデータを、レイヤーまたはbaseに転送
↓
トランジッション
0656名前は開発中のものです。
05/02/11 01:44:23ID:SP3RjXTSあとトランジッションの小さい「ッ」は何故? 発音的には「トランジション」が最適な気が。
0657名前は開発中のものです。
05/02/11 04:03:47ID:p1jn0uohCで吉里吉里plugin書くってんなら可能でねいの?
まその場合そもそもshellExecute何て使う必要無いわけだけど。
0658名前は開発中のものです。
05/02/11 08:01:50ID:C7sidUHdリアルタイムに変換しなきゃならないのって、相当特殊な
用途だと思うんだけど。
0659名前は開発中のものです。
05/02/11 08:36:11ID:DIIPDpCgttp://homepage2.nifty.com/wp/kotonoha/kurumi.html
0660名前は開発中のものです。
05/02/11 09:09:00ID:Picc0BLL0661名前は開発中のものです。
05/02/11 09:29:56ID:SP3RjXTSと
http://www.ultrasync.net/dee/kr2helps/kr2doc/contents/StorageSystem.html#id158
で出来るのかな? それとも、プラグイン読み込んだらKAG中で普通にデータを使えるようになるのかな。
0662661
05/02/11 09:30:37ID:SP3RjXTS0663名前は開発中のものです。
05/02/11 13:44:48ID:Cn+Bwtcy0664名前は開発中のものです。
05/02/11 14:10:54ID:4xcxnGyi吉里吉里のソースが丸見えでビビった。
0665名前は開発中のものです。
05/02/11 14:29:34ID:XVPobpoI> NScripterとかの圧縮された画像を使用する事とかってできる?
やりたいことが本当にそれなら、Susie-Pluginを使うのが一番まともな方法。
このページ(↓)をSusieで検索してみ?
ttp://www.ultrasync.net/dee/kr2helps/kag3doc/contents/Prepare.html
VCかなにかが使えれば、Susie-Pluginを作るのはそう難しくないよ。
(画像やらアーカイブの仕様がわかってればの話)
Susie-Pluginの作り方はこの辺り(↓)。
ttp://www.asahi-net.or.jp/~kh4s-smz/spi/make_spi.html
0666名前は開発中のものです。
05/02/11 18:07:35ID:7P6+l6EXNスクでNスクはよく見るけど吉里吉里で吉里吉里のゲームって見たことないね。
0667名前は開発中のものです。
05/02/11 21:41:43ID:54CWISX0クソノートンいいかげんにしてくれ
0668名前は開発中のものです。
05/02/11 21:56:38ID:2BAVEWuZ0669649
05/02/12 01:36:33ID:lNJ7aCSR言語仕様がわかりやすい、気がする。
まだよくわかってないけど、TJS と JavaScript はどう違うんだ?
まあ、違うってことはわかるんだけれども。
というか、どんな意図を持ってオリジナルの言語をつくったのか
知っておきたいんだけど、どこかにそういうことは言及してあるかな?
0670名前は開発中のものです。
05/02/12 01:41:02ID:+ioeJF9B0671名前は開発中のものです。
05/02/12 02:13:15ID:Gak1kNy4TJS = TVP Java Script
TVP = T Visual Presenter = 吉里吉里コア
0672名前は開発中のものです。
05/02/12 21:22:15ID:aZWZeHRwうちもそれまで平気だったのに
それと同じファイルが昨日ひっかかった。なんでだ・・・
0673名前は開発中のものです。
05/02/12 21:41:12ID:m5Kn9d+Y0674名前は開発中のものです。
05/02/12 22:59:22ID:CQUUnbR4@eval exp="f.flag1 = 0"
@link cond="f.flag1==1" storage="hoge.ks" target="*hoge_start"
(・A・)
@endlink
@r
[s]
22:50:50 (void) から object へ型を変換できません at messagelayer.tjs line 1515 [(function) endHyperLink]
22:50:50 trace : mainwindow.tjs(4455)[(function expression) (anonymous)] <-- conductor.tjs(427)[(function) onTag] <-- conductor.tjs(95)[(function) timerCallback]
22:50:50 エラーが発生しました
ファイル : first.ks 行 : 5
タグ : endlink ( ← エラーの発生した前後のタグを示している場合もあります )
(void) から object へ型を変換できません
22:50:50 script exception : エラーが発生しました
ファイル : first.ks 行 : 5
タグ : endlink ( ← エラーの発生した前後のタグを示している場合もあります )
(void) から object へ型を変換できません at conductor.tjs line 177 [(function) timerCallback]
0675名前は開発中のものです。
05/02/12 23:24:01ID:SMbPByN3[link] はスキップされるのに、[endlink] はスキップされないから。
0676名前は開発中のものです。
05/02/12 23:28:03ID:CQUUnbR4もう少し詳しくお願いします
0677名前は開発中のものです。
05/02/12 23:46:21ID:7IzteecTcond属性のことだ。
0678674
05/02/13 00:06:50ID:VOT58aUx@eval exp="f.flag1 = 0"
@link cond="f.flag1==1" storage="hoge.ks" target="*hoge_start"
(´・ω・`)
@endlink cond="f.flag1==1"
@r
[s]
0679名前は開発中のものです。
05/02/13 00:25:23ID:LW5lmJmG俺も昔この板ですごく簡単な事聞いてしまい、それに返答してもらった。
おまいさんも簡単な質問が出たときには本家のようにバカ優しくなくていい。
教えてあげてくれ。
0680名前は開発中のものです。
05/02/13 00:28:19ID:V9XWisFDちとワロタ
0681名前は開発中のものです。
05/02/13 20:02:32ID:h++wt/Gf俺だったら、こんな感じで、[if]でまとめるけど、どうよ
;フラグを、初期化または、設定
[eval exp="f.flag = 0" ]
…………
;選択肢の、設問内容を、条件で変化
[if exp="f.flag==0" ][link storage="hoge.ks" target="*hoge_start_0"](´・ω・`) [r][endlink][endifif]
[if exp="f.flag==1" ][link storage="hoge.ks" target="*hoge_start_1"](`・ω・´) [r][endlink][endifif]
[if exp="f.flag==2" ][link storage="hoge.ks" target="*hoge_start_2"](`・ω・) [r][endlink][endifif]
[if exp="f.flag==3" ][link storage="hoge.ks" target="*hoge_start_3"](・ω・`) [r][endlink][endifif]
[s]
0682674
05/02/13 22:14:16ID:3dQ4lKH5もちろんですよ?
でも自分に分かる質問なんてあんまりなかったりするんですがOTL
本家の丁寧な対応を見てると
自分もなんかしないといけない気分になります。
吉里吉里のすごいところは機能とかだけでなくそういうところにもあるのかなと。
>>681
>>678のは、condの式が真のときにリンク付きの(´・ω・`)が表示され
偽のときはリンクは付かずに普通に文字として(´・ω・`)が表示されます。
>>681さんのは[if]の条件が偽のときは文字自体表示されないので
目的の動作が微妙に違うみたいです(それから[endif]がなんか違うです)
それで実は自分がやりたかったのは>>681さんの書かれた方なので
最初に書いたスクリプトの間違いは>>675さんに教えてもらったけど
それを書いた自分の考えそのものが間違ってたので、結局>>681さんのが
自分のやりたかった事でした
なんかややこしくなりましたが、要はお二人に感謝って事です
0683名前は開発中のものです。
05/02/14 20:04:01ID:hmIoE7fo[tempsave]と、[tempload]で、現在の画面状況を、保存、復帰が、できないのですが
なにか良い対策方法は、無いでしょうか?
;拡大縮小マクロ
;[zoom_set st0=背景画像 st1=変形させる画像 dx0=左上X座標 dy0=左上Y座標 dx1=右上X座標 dy1=右上Y座標 dx2=左下X座標 dy2=左下Y座標 ]
[macro name=zoom_set]
[image storage=%st1 page=back layer=0]
[image storage=%st0 page=back layer=1]
[eval exp="kag.back.base.affineCopy(kag.back.layers[1], 0, 0, 640, 480, false,0,0,640,0,0,480, stNearest)"]
[eval exp="kag.back.base.affineCopy(kag.back.layers[0], 0, 0, 640, 480, false, mp.dx0, mp.dy0, mp.dx1, mp.dy1, mp.dx2, mp.dy2, stNearest)"]
[endmacro]
;画像を縮小して表示
*test|拡大縮小画面TEMPセーブテスト
*|
[zoom_set st0="bg00" st1="cg001" dx0=0 dy0=0 dx1=320 dy1=0 dx2=0 dy2=240 ]
[stoptrans]
[trans method=crossfade time=500][wt]
[s]
↑このタイミングで、自作したRクリックメニューの復帰用に[tempsave]
…………
自作したRクリックメニューの復帰時に[tempload]で、画面状況復帰
0684名前は開発中のものです。
05/02/14 23:46:57ID:V9emw8M3たとえばこのマクロだったら、レイヤ0とレイヤ1に読み込んだ画像は復帰できてるはず。
自分で描きなおせ
0685名前は開発中のものです。
05/02/15 16:53:44ID:v4ys7YbC処理速度がプレイに影響するようなゲームを作っているのですが、
プレイする個々の環境によって、処理時間にミリ秒単位とはいえ差が生じてしまい、
自分の環境に合わせても、理想的な動作をしなくなってしまうと思われますので・・・
0686名前は開発中のものです。
05/02/15 17:50:06ID:MAY0owUE0687名前は開発中のものです。
05/02/15 18:01:45ID:VORTF5W+KAG System リファレンスにある
”resetwait タグと wait mode=until を使って〜”
というのが使えると思います
「陥りやすいミス」の
”ウェイトがマシンスペックによって〜”という項目です
0688名前は開発中のものです。
05/02/15 20:02:42ID:v4ys7YbCレスどうもです。う〜ん、でもこれだと今回の場合は駄目ですね・・。
自分の作っているものの場合、ウチの環境も悪いこともあって、
遅いCPUで理想の動作のするものを、高速CPUでもウチのPCと同等の速さに処理を抑えさせたいのです。
今回の場合、そのゲームの処理時間自体が、製作マシンだとそれなりに長く、
それをウエイトとして利用して作っちゃったようなもので、
もう、CPUの速度を制限できない限りは対処法がない感じになっちゃいまして・・・。
う〜ん、やっぱりこういうことは無理っぽいですね・・・(´・ω・`)
0689名前は開発中のものです。
05/02/15 20:42:03ID:oT4CG+lbtjs2 のリファレンスに Date クラスというのがあって、これの getTime メソッドを使えば、
約1/1000秒の精度のクロックしてゲームの動作を管理できると思うけど、どうだろう。
0690名前は開発中のものです。
05/02/15 20:44:46ID:bqJ2pKCA>処理速度がプレイに影響するようなゲーム
上記の様な、問題点を提示された場合
どんなタイミングで、
どの様な動作をした時、
どの様な処理をして、
どのくらいの時間で結果を応答させたいのか
これを筋道立ててスクリプトを組む必要がある
よって、入力とその応答に対するしょりは、
入力→(処理時間設定)→処理→(設定時間までウエイト)→出力
と、構築されるので >687 の示したようなタグ等で処理する
しかし、>688 の様な、根本的組み方から、誤りがあるのでは?
と、本人事態が、スクリプトに疑問を抱いている様子なので、
どんな時に、何を、どうすると、どんなことになって欲しいのか
を、ぶっちゃけ、ど〜んと書いてみては?
0691689
05/02/15 20:50:54ID:oT4CG+lbSystem.getTickCount();
を使えばいいんだ_| ̄|○
0692名前は開発中のものです。
05/02/15 22:52:36ID:/0nobk9O0693名前は開発中のものです。
05/02/15 23:18:41ID:Azidk1mR0694名前は開発中のものです。
05/02/16 01:13:52ID:+SYo6rwW0695名前は開発中のものです。
05/02/16 18:42:01ID:XnnaZT4W要領悪いんだろうなぁと思いつつ。
0696名前は開発中のものです。
05/02/16 19:36:08ID:io/biDLmめちゃくちゃ高度な演出とかが入ってるならそれもありかと。
0697名前は開発中のものです。
05/02/16 20:06:01ID:wS264nt5マクロ化できそうなところを探してみるとか
ごちゃごちゃしてると自分が見にくいと思うから
いや、問題ないならいいんだけど
0698名前は開発中のものです。
05/02/17 00:42:20ID:AcBSAP7w0699695
05/02/17 01:16:10ID:XQt8KFjDセリフが「あ……」の場合
ラベル
立ち絵表示マクロ
モード識別
条件付きヒストリーアウトプット不可
メッセージウィンドウ表示
表情表示マクロ
履歴表示時キャラネーム表示
フォント情報
条件別ボイス処理マクロ
あ……
リセットフォント
条件付きヒストリーアウトプット不可解除
条件付きヒストリー改行挿入
ヒストリー条件初期化
0700名前は開発中のものです。
05/02/17 02:24:59ID:8gUMXWNb明らかに要領悪いな。
マクロで半分くらいには出来そうだ。
0701名前は開発中のものです。
05/02/17 02:42:26ID:gqlp/hICtjs使いなら2行で済むな。
0702名前は開発中のものです。
05/02/17 03:37:27ID:GcsN9N1jラベル
________________
立ち絵表示マクロ
________________
表情表示マクロ
_________________
ページ開始マクロ
モード識別
条件付きヒストリーアウトプット不可
メッセージウィンドウ表示
履歴表示時キャラネーム表示
フォント情報
________________
条件別ボイス処理マクロ
________________
あ……
________________
ページ終了マクロ
リセットフォント
条件付きヒストリーアウトプット不可解除
条件付きヒストリー改行挿入
ヒストリー条件初期化
0703695
05/02/17 10:59:23ID:XQt8KFjDフォント情報
条件別ボイス処理マクロ
あ……
リセットフォント
から作品重ねる度に条件付け増やしていってたのでこんな事にw
ちょっと考えてみるかなー。
0704名前は開発中のものです。
05/02/17 14:53:07ID:olDubZLQ規定の演出を入れながら以下に軽くKsを作るかを競う……ってのはどう?
他人のマクロって気になるよね
0705名前は開発中のものです。
05/02/17 15:25:58ID:ElIxvyV5俺の場合こんな感じで、本文の基本を組んでいて
必要に応じて、マクロを入れている
*|ラベル
[ページ開始]
本文1行目[r]
本文2行目[r]
本文3行目[r]
本文4行目
[ページ終了]
マクロをありったけ入れるとこんな感じ
*|ラベル
[BGM再生 (スキップモード時再生しない オートモード時再生 同じ曲が再生中の時再生しなおし不可)]
[SE再生 (スキップモード時再生しない オートモード時再生)]
[背景表示準備 (現在の立ち絵を全て消去)]
[イベント画像表示準備 (CGモードに登録)]
[立ち絵表示準備]
[画面更新]
[特殊演出 (画面をフラッシュ)]
[画面揺らし]
[ページ開始 (テキストウインドウ設定 履歴のみ改行)]
[キャラボイス再生 (スキップモード時再生しない オートモード時再生)]
本文1行目[r]
本文2行目[r]
本文3行目[r]
本文4行目
[ページ終了 (キャラボイス終了 改ページ待ち)]
0706名前は開発中のものです。
05/02/18 14:39:26ID:VzJDqxAB0707名前は開発中のものです。
05/02/18 15:11:02ID:xl8TV5f0注意されるまでわからんのかこのリア工は。
0708名前は開発中のものです。
05/02/18 20:28:45ID:ef/vKwPA0709名前は開発中のものです。
05/02/18 23:14:05ID:UwvUntDdで、二日くらい放っといて忘れていた今日、ふと目に付いたので、
スフィアすのだとは気付かぬまま、それをやってみたさ。
いや〜止まる止まる。ぶち切れたね。選択肢もないのにシナリオ停止したり、
ラベルが見付かりませんと報告されたり、選択肢群の表示途中で改頁しちゃったり、
こんな状態のものを配布するってなどういう了見だってんで
同梱の更新履歴見たら去年八月からの更新履歴が載っていて唖然として
ようやくスフィアすのだと気がついた。色んなものを損した気分。
0710名前は開発中のものです。
05/02/18 23:44:19ID:xKgBZWCa0711名前は開発中のものです。
05/02/19 00:16:31ID:CDIrRsjVこのドメインって学校の大会だったよな?
0712711
05/02/19 00:18:25ID:CDIrRsjV中の人スマソ
0713名前は開発中のものです。
05/02/19 02:07:08ID:R0Z8VAHKドメインのことは知らないが、このサイト背景に字が重なって読みにくい…。
0714名前は開発中のものです。
05/02/19 08:42:31ID:sl4VoTg3http://contest2004.thinkquest.jp/tqj2004/70619/about.html
ThinkQuest
このWebサイトはThinkQuest@2004出品作品です。
0716名前は開発中のものです。
05/02/19 20:24:24ID:JM1BXBDx0717名前は開発中のものです。
05/02/19 20:37:50ID:9ib2Plci| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0718名前は開発中のものです。
05/02/19 21:34:47ID:9ib2Plci\/ ● 、_ `ヽ
/ \( ● ● |つ
| X_入__ノ ミ
、 (_/ ノ
\___ノ゙
/ 丶' ⌒ヽ:::
/ ヽ / /:::
/ /へ ヘ/ /:::
/ \ ヾミ /|:::
(__/| \___ノ/:::
マジレスすると保守性と安定性も向上するクマ。
保守性というのは、後からの変更がどれくらい簡単かという意味で、
ttp://www.piass.com/ykfc/kag/index.html
の8日目の2と3を我慢して読めば実感できるクマ。
またマクロは一度動作確認すれば、内容が正しいことが確かめられ、
スペルを間違えてもエラーが出るクマ。
それに対しタグの塊をばら撒くと、個々の内容が正しいかどうかは、
全部のチェックが必要な上、属性の指定間違いなど、エラーが出ない
ミスがあった場合に、発見が困難になる可能性が増すクマ。
つまりマクロを使ったほうが安定性が増すクマ。
0719名前は開発中のものです。
05/02/19 21:50:12ID:JM1BXBDx保守性も安定性も別の手段でとってるので
俺の場合、そっちを直してマクロも直すことになるんだ。
だから出来るだけマクロを使わない方向でスクリプトを
つくっていきたいのだけど、そうした場合は視認性が悪くなるくらいで
ゲーム中の処理速度とかはかわらないよねと聞きたかった。
0720名前は開発中のものです。
05/02/19 22:01:53ID:0GkhGclS0721名前は開発中のものです。
05/02/19 22:24:40ID:9ib2Plciはっきりしたことは言えないけど、内部的にはマクロは
元のタグ群に展開されるので、使わなかったからといって
速度的に不利になることはないはず。
0722名前は開発中のものです。
05/02/19 22:55:37ID:ENXN7azq詮索してもどうなるわけでもないけど
0723名前は開発中のものです。
05/02/20 00:14:53ID:Ox8uVojhなんとなくマクロ使わない分メモリ逼迫して余計遅くなりそう
っていうかそんなの心配になる奴は自分で調査したり自分でエンジン組んだりしなさい
0724名前は開発中のものです。
05/02/20 00:54:18ID:7qErGj1Z相当細かいつっこみだがマクロ使うほうが少し処理が増える
辞書配列へのアクセスが増えるから
しっかしマクロ云々いうよりも立ち絵なんかの周囲の
無駄に広かったりする透過部削るとかの方がよっぽど効果あるだろ
まぁ、それだって見てわかるような違いは出ねぇが
んな暇あるなら画像をtlgにしようぜ!
0725名前は開発中のものです。
05/02/20 12:53:38ID:9CHlMpwYどなたか分からないでしょうか?
0726名前は開発中のものです。
05/02/21 00:22:40ID:JcgumuvkWindow クラスや Layer クラスに onClick というイベントがあって左クリックは簡単に検出できる。
でも右クリックを検出するための機構はないよね? 俺の調査不足か?
0727名前は開発中のものです。
05/02/21 00:29:47ID:ro0j6Hffhttp://sai5sarashi.zive.net/memo/memo00004.html
>726
>俺の調査不足か?
うん
0729726
05/02/21 01:09:36ID:Jcgumuvkやっぱりそうなのか。
何度かリファレンスを見直したんだけどな……どこにあるんだ。
まあいいや。ありがとう。
onMouseDown と onMouseUp を組み合わせてやるわ。
0730727じゃないが
05/02/21 17:23:26ID:rY9HaqqGよくわからんが質問したからには探し出して欲しい気がする。なんとなく。
ヒントとしては吉里吉里ファレンス。だと思う多分。いや俺初心者なんで。
0731凡_寸
05/02/21 21:22:51ID:OPi9KJUFあとonMouseDownとonMouseUpを組み合わせれるスキルがあるならそう書いて欲しかった
0732730
05/02/21 21:51:52ID:rY9HaqqG0733726
05/02/22 02:14:44ID:4Sgqw8Lw二人ともサンクス。
そうだね。現状でどうやって実装してるかを先に書いておけば余計な手間を取らせずに済んだ。すまんこ。
0734名前は開発中のものです。
05/02/25 22:43:00ID:fZqZ8CE2[position]タグで、draggable=true と、設定すると、
メッセージレイヤーを、マウスのドラックで、任意の場所に移動できるので、
この時、指定したメッセージレイヤーの、X座標とY座標を、規制して、
スクロールバーみたいに、上下や左右に限定して動かしたいと、考えた。
そこで、必要なアルゴリズムとして以下の様なフローを考えたのだが
[eval exp="tf.とりあえずの一時関数 = tjs式のゴチャゴチャした関数"]
ぐらいしか、tjsは解っていないので、はたして構築可能なのか解っていない
組み方として、方針が間違っていないか、検証して欲しい
[position]にて、メッセージレイヤーを表示
タイマー割り込みにて、スクロールバー移動処理受付中
すでに配置してあるボタン等で、タイマー割り込み解除および、次のステップへのジャンプ
[s]にて、処理一時停止
____________________________________
タイマー割り込みの内容
メッセージレイヤーの現在の座標を取得
メッセージレイヤーのX座標、移動可能範囲の最大値以上なら、最大値に固定
メッセージレイヤーのX座標、移動可能範囲の最小値以下なら、最小値に固定
メッセージレイヤーのY座標、移動可能範囲の最大値以上なら、最大値に固定
メッセージレイヤーのY座標、移動可能範囲の最小値以下なら、最小値に固定
上下方向のみに動かす場合、X座標を、初期値に固定
左右方向のみに動かす場合、Y座標を、初期値に固定
メッセージレイヤーを、指定の(X,Y)座標で、再表示
表示位置(X,Y)によって、変化する定数の再設定
リターン
0735名前は開発中のものです。
05/02/25 23:19:17ID:KQsQSiMlfirst.ks にコピーして動かしてみて。
@eval exp="kag.fore.base.fillRect(0, 0, 640, 480, 0xffffff)"
@iscript
kag.current.internalMouseMove_org = kag.current.internalMouseMove;
kag.current.comp.internalMouseMove_org = kag.current.comp.internalMouseMove;
kag.current.internalMouseMove = function(x, y)
{
var l = left;
kag.current.internalMouseMove_org(x, y);
if(dragging)
{
// ドラッグ中
var py = parent.cursorY;
if(py < 0) py = 0;
if(py >= parent.height) py = parent.height -1;
var t = py - dragOriginY;
setPos(l, t);
return;
}
} incontextof kag.current;
kag.current.comp.internalMouseMove = kag.current.internalMouseMove;
@endscript
@position draggable=true
0736名前は開発中のものです。
05/02/26 00:27:35ID:+2HoW21U以下のタグを追加して、初期配置、X=100 Y=100 16*16の画像を、動かしてみた
@current page=fore layer=message3
@position draggable=true frame="test_ber" page=fore layer=message3 left=100 top=100 width=16 height=16 visible=true opacity=255 marginl=8 marginr=8 margint=8 marginb=8]
[s]
残念ながら、
マウスのドラッグで、”自由に全ての場所まで”、動かす事ができた
>@eval exp="kag.fore.base.fillRect(0, 0, 640, 480, 0xffffff)"
の、0とか、640とかの数値もいじってみたが、やはりダメだった
_________________________________________
>735 のスクリプトがアップされるまでに、自分で調べた物として、
KAGリファレンスマニュアルの、”TJSをもっと使うために”によると
kag.fore.messages[3]
と、記述すると、表のメッセージレイヤー3番を、意味するtjs式だと説明があった
また、
TJSのリファレンスによると
Window.setLayerPos(left, top) レイヤーの表示位置指定
Window.layerLeft レイヤーの左位置情報(取得/設定)
Window.layerTop レイヤーの上位置情報(取得/設定)
との、記述があったが、
どのように組み合わせて記述すれば
自分の目標のレイヤーの、情報を、取得したり、設定できるのか
まだ、理解できてない。
KAGレベルよりの、使用例のサンプルがあると助かるが、それは、贅沢ってもんだ
土、日にかけて、もうちょっと調べてみるよ。
0737735
05/02/26 01:04:36ID:1xBTr/C8ttp://edolfzoku.hp.infoseek.co.jp/first.ks
0738734
05/02/26 01:23:30ID:+2HoW21Uありがとうございます。
これを足がかりに、スクロールバーのギミックの構築が、進められます
本当にありがとうございました。
0739名前は開発中のものです。
05/02/26 07:27:22ID:rtj61ODy倍率が変更できるようになってて、久々に機能追加で驚かされた。
Deeタン最近はレイヤ描画をちょっとずつ改造してたみたいだけど、
これが、そのわかりやすい成果の一つなのかな?
0740名前は開発中のものです。
05/02/27 17:40:48ID:5rapVUC/冒頭にmacroを書くだけだと、それ以降にあるラベルでロードをすると
macroで指定したnameが無効で、エラーが出て止まってしまいます。
途中でロードをしなければ、問題なく動くのですが。
0741名前は開発中のものです。
05/02/27 17:47:04ID:ArEnBMmuマクロを書く位置は冒頭でオケ。
Config.tjsで、マクロを栞に保存する設定になってるのが原因なんじゃねーの。
そんで、そのマクロ情報が保存されてないデータをロードしてしまったんだろう。
解決策は設定を変更して、以前のセーブデータは勿体無いが削除。
0742名前は開発中のものです。
05/02/27 17:48:43ID:ArEnBMmuセーブデータは削除しなくてもいいのかもしれん。このへんは俺未確認。
0743740
05/02/27 19:25:06ID:5rapVUC/>>742
ありがとうございます。
無事解決できました。
セーブデータの事ですが設定を変えても適用されるようで
削除の必要はありませんでした。
0744名前は開発中のものです。
05/03/02 19:27:54ID:GTk8ysmvtjsに詳しい人、誰か教えてください
[eval exp="f.pp =0"][eval exp="f.pp_min =0"][eval exp="f.pp_max =144"]
[eval exp="f.pp_x = 50"][eval exp="f.pp_y =100"][eval exp="f.pp_cx = 50"][eval exp="f.pp_cy =100"]
*test_000
[nowait][cm][eval exp="tf.pp_cx =f.pp_cx -16"][eval exp="tf.pp_cy =f.pp_cy -16"]
[locate x=&f.pp_x y=&f.pp_y ][button clickse=click clicksebuf=2 graphic="test_ber_00" target=*test_010_click onenter="kag.process('','*test_010')" onleave="kag.process('','*test_010')"]
[locate x=&tf.pp_cx y=&tf.pp_cy][button clickse=click clicksebuf=2 graphic="test_ber_99" target=*test_010_click]
[endnowait][s]
*test_010
;[eval exp="tf.onMouseDown =マウスボタンの押下状態の取得"]
;[if exp="tf.onMouseDown == true"]
[eval exp="f.pp =kag.fore.messages[0].links[0].object.cursorX"][eval exp="f.pp_cx =kag.fore.base.cursorX "]
;[endif]
[jump target=*test_010_end]
*test_010_click
[eval exp="f.pp =kag.fore.messages[0].links[0].object.cursorX"][eval exp="f.pp_cx =kag.fore.base.cursorX "]
[jump target=*test_010_end]
*test_010_end
[if exp="f.pp >= f.pp_max"][eval exp="f.pp = f.pp_max"][endif]
[if exp="f.pp <= f.pp_min"][eval exp="f.pp = f.pp_min"][endif]
[if exp="f.pp_cx >= f.pp_x + f.pp_max "][eval exp="f.pp_cx = f.pp_x + f.pp_max "][endif]
[if exp="f.pp_cx <= f.pp_x + f.pp_min "][eval exp="f.pp_cx = f.pp_x + f.pp_min "][endif]
[jump target=*test_000]
0745名前は開発中のものです。
05/03/02 19:34:43ID:GTk8ysmvtest_ber_00.bmp 480*16 0xffffffの長方形
test_ber_99.bmp 96*32 0xff0000の長方形
test_ber_99_m.bmp 96*32 0xff0000の長方形
↓画像の内容は、こんな感じのマスク(■=0x000000 □=0xffffff)
■■■■■■
■□■□■□
0746名前は開発中のものです。
05/03/02 21:48:43ID:l+u9V86M// function onMouseDown(x, y)
// {
// lastMouseDownX = x;
// lastMouseDownY = y;
// super.onMouseDown(...);
// }
↑をコメントアウト。
function onMouseDown( x , y )
{
lastMouseDownX = x;
lastMouseDownY = y;
tf.onMouseDown = true;
}
function onMouseUp( x , y )
{
tf.onMouseDown = false;
}
↑を追加。
これで [eval exp = "tf.onMouseDown"] だけでマウスボタンが押されてるか判定できるハズ。
0747名前は開発中のものです。
05/03/02 21:50:12ID:l+u9V86Mスクロールバー形式履歴のプラグインに確かスクロールバー応用の為のコメントあったよな?
0748名前は開発中のものです。
05/03/03 08:28:01ID:y/8Xs/T0ありがとうございます
早速、組み込んでみます、
>747
たしかに、TJSで組んだほうが、すっきりすると思います
ですが、TJSでの基本的な組み方、基本的な、構築の方法を、
理解しきれていませんので、
自分は、まだKAGベースで組むことになると思います
吉里吉里2リファレンスにある
クラスリファレンスの、メソッドや、プロパティを見ても
どのように書けばTJSで活用できるのか
どのように書けばKAGで応用できるのかを、
どこを見て調べればいいかかが、見当がつかなく。
偶然、見つけてたとしても
KAGから入ってJavaとか知らない自分には、
基本中の基本のtjs式の構文(○○の値を参照するとか、○○の関数での○○の値を参照とか)を、
どのように書けば良いか知らないので、(ifとか、forとかは、解説があるから理解できた)
結局、知らない英単語を、英英辞書で調べているような堂々巡りに陥って
(本当は、TJSで表現出来ることでも)TJSだと、自分のやりたい事が、表現できなくなって
最終的には、理解のしているKAG+(簡単なTJS式の構文)で組む事になる……の繰り返しです
初心者から中級者への、この超えられない壁を、解説しているサイトとか、どっか無いものですかねぇ……
長文、失礼しました
0749名前は開発中のものです。
05/03/03 13:59:49ID:Jzn86rv20750名前は開発中のものです。
05/03/03 14:47:54ID:KgNm2K+2すっきりする、とかの問題ではなく、TJSもKAGも基本的にスレッドは一個しか走ってないので
イベント処理時に発生するスレッド使わないと、
スクロールバー表示中はそれだけに処理を取られてしまってシナリオを進行できない。
いきなり活用だの応用考えずに、まずはソースを見て処理の流れを読めるようになるのが大事。
殊に他人の書いたスクリプトに手を加えるって場合は、そこで何が行われてるか理解していないと
予期しないバグが発生した場合、何が原因かすらわからないハメになる。
いきなりKAG systemを読もうとするのは無謀以外の何でもないので、
最初はviewerとかtransviewerのコードを読んでみるのが良いと思う。
読んでいく過程で知らない構文、知らない関数、知らないクラスが出てきたらリファレンスを読む。
はっきり言うとTJSとKAGの間に壁なんて無い。
0751名前は開発中のものです。
05/03/04 02:02:00ID:HJkFDaOM壁はあるだろう……。
tjsしか使わない俺からすると、KAGの壁はあまりにも高い……。
0752名前は開発中のものです。
05/03/05 03:42:16ID:93OEjAMBちなみに、本家にそれっぽいのはあったんですが、保存されるのは履歴だけみたいでした
http://kikyou.info/tvp/bbs/bbs.cgi?mode=&action=treeall&num=7315#7315
■ このスレッドは過去ログ倉庫に格納されています