[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 06/03 07:38 / Filesize : 307 KB / Number-of Response : 991
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

■吉里吉里/KAG/TJS雑談質問スレ■その23



1 名前:名前は開発中のものです。 mailto:sage [2011/02/03(木) 13:12:07 ID:6MBIOEHD]
ノベルゲーム製作ツール吉里吉里/KAGのユーザーが雑談・質問をするスレです。
自作ゲームの進行状況や製作ツールについての話、TJS等の話題もどうぞ。
マルチポストはやめましょう。個人叩きも禁止です。

※スレで質問をするときは※
KAG/TJS/吉里吉里ドキュメント、スレの過去ログ、公式掲示板のログ、
FAQ、Google等で調べてからにしましょう。
努力の形跡が見られないとスルーされがちです。初心者?でも頑張れ!

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
吉里吉里2/KAG3雑談質問スレ_過去ログ
ttp://www.geocities.jp/kirikiri_log/

吉里吉里ダウンロードページ
ttp://kikyou.info/tvp/

ダウンロードしたアーカイブに含まれる「KAG System リファレンス」は
初心者にとって最も頼もしい教科書です。何度も繰り返し読みましょう。
■タグリファレンス … KAGの機能が網羅的、辞書的に載っています。
大よその機能(KAGでどんなことが出来るか)は把握しておきましょう。
■Tips/その他 … 陥り易いミスやより高度な使い方への足掛かりになる
数々のTipsが記載されています。
■TJSをもっと使うために
ゲームのインターフェイスをカスタマイズしたい、また
KAGの命令に無いことをしたくなったらまずここを読んでみよう。

必要に応じて>>3-5の公式掲示板や講座等を併用してください。
(併用に、紙媒体の参考本が欲しい人は、ダウンロードページにリストがあります)

前スレ
■吉里吉里/KAG/TJS雑談質問スレ■その22
hibari.2ch.net/test/read.cgi/gamedev/1285897465/

66 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 20:31:08 ID:/yCrp/56]
何度も雑談をぶった切ってすみません。
>>59です。
あれから挑戦し続けてたんですが、
全然それっぽいコードが拾えません。
skipKeyRepressed←このあたりが必要なのかと思って
粘ってみたのですが、やっぱり動いてくれません。
ヒントだけ貰えたらあとは頑張るので、
ヒントをください、お願いします。

67 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:00:37 ID:rIkoESI/]
>>66

59の書き込みの意味がたぶんみんな理解出来てないと思う。
そもそもスキップはPCスペックで出来るだけ最速で流そうとするからメッセージすらろくすっぽ見えない事もあるし重い演出だと若干カクカクと動く事もある。
それとは別にオートモードと言うのがあって、そっちもダダダダと(スピードによっては)流れる。

どっちも感覚的なものだから、ぶつ切りと言うのがわかりづらいけど。
もしかして、[P]とかで止まってる事を言ってるのかな?
skipmodeは弄ってる?

68 名前:>>59 mailto:sage [2011/02/08(火) 21:13:56 ID:/yCrp/56]
>>67
>たぶんみんな理解出来てないと思う。
すみません。笑いました。初心者でごめんなさいwww

>skipmode
弄るといっていいのかは分からないのですが、
使った方がいいと講座で見たので、
kag.skipMode<=1の時には効果音やトランジションを省いてあります。

やりたいのは、

スペースキーを押し続けた時に文字や絵がダダダダッと流れていくスキップ

キーを押すのをやめればそのまま止まる



ウィンドウ脇のシステムボタンを押すと文字や絵がダダダダッと流れていくスキップ

画面クリックで止まる

にすることです。

現在は吉里吉里デフォルトの[次の選択肢まで]?でスキップさせているので、
ところどころ止まったりして(恐らくPCのスペックによる)見栄えが悪いのです。
吉里吉里なら何でも出来ると踏んで挑戦を始めたのですが、
この様です。どうにかしたいです。

69 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:26:04 ID:AkU97XwL]
>>63
なんでoggがpngなんだyp!
pngは仕様的には32bitBMPの完全上位と言っても良い 可逆圧縮だから劣化なんかしない
むしろpngがあるのにあらゆる面で下位なbmpをなぜ使うのかと小一時間・・・・

70 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:30:50 ID:AkU97XwL]
>>68
省いてると言う事はちゃんと処理してると思うのだが、商品レベルのゲームでちゃんとスキップが機能してるものは、condなどで音声や動画やトランスなどの処理を止めるように地道にタグを打ち込んである。
参考にしたいゲームを復号して覗いて見ると良いよ。

それとskipmodeの数字の意味を調べておくと吉

71 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:32:04 ID:7rRlgMes]
pngはどっちかというとgifの代替みたいに使ってたな

72 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:35:03 ID:Dz7x7O+i]
ループチューナーめっちゃええわー。
こういうループ再生に特化した再生ソフトがあればいいのに。

73 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:36:21 ID:ufMnhuPH]
正直言って
早送りが多少カクカクしてたって困るユーザーは一人も居ないと思うんだが、それは言っちゃだめか^^

74 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:48:57 ID:k/eZJM5R]
>>63
たとえが不適切。oggに対応するのはjpeg

>>60
実は bmp は png よりロード時のCPU負荷が圧倒的に軽くて読み込みも速いというメリットがあったりする
xp3 へのパック時に圧縮するようにすると、CPU負荷はややかかるけど、それでもまだPNGより軽い。サイズはそこそこ



75 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 21:51:57 ID:AkU97XwL]
>>71
一応gifの後継仕様だからな
ただ本来のgifの使われ方からするとMNGとかAPNGとかの方が正しい後継なんだが、片方は不採用にしてしまうし、もう片方はサブマリン特許にはめられてて身動き取れないし、なんだかなーって感じだな

76 名前:>>59 mailto:sage [2011/02/08(火) 21:59:51 ID:/yCrp/56]
確実に俺の書き方が悪いせいなんだけど、
やりたいことがやっぱり分かってもらえないwww

>>70
シフトキーでのスキップは、
問題なく文字と画像が早送りって感じで流れるのね。
それこそ商業ゲーみたいに。
これを、キーじゃなくて画面上のスキップボタンでやりたいんだ。
あと、復号なんて高度な技出来ない><
skipmodeの意味は勉強したよ。必要なのは4……なのだろうか。

>>73
場面を止めたいところで止められないから不便。
文字と画像は見えた方がいい。
って、言いたいことが伝わってないせいだと思うんだけどw

77 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 22:12:18 ID:AkU97XwL]
>>76
それは単純にその該当部分をコピペするだけじゃダメなのか?
たぶん公開されてるスキップモード関連はどこのも多少TJSの知識があればいじれるレベルでつくってあったはず

78 名前:>>59 mailto:sage [2011/02/08(火) 22:19:18 ID:/yCrp/56]
>>77
巷の講座やプラグインのスキップ関連は
kag.onSkipToNextStopMenuItemClick();
って大抵はなってるんですけど、
>該当部分をコピペする
って乏しいTJSの知識でも何とかなりますかね?
初心者でシステムの方を弄るのは恐いのですが。

79 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 22:24:26 ID:AkU97XwL]
俺もそんなにtjsは出来るわけじゃないがあのくらいは読むのに苦労するレベルじゃなかったはず。
実際に実行してるコアの部分はすぐわかるだろうし、とりあえずバックアップして移植してみろ。
ダメだったら戻せば良い。

80 名前:>>59 mailto:sage [2011/02/08(火) 23:20:35 ID:/yCrp/56]
MainWindow.tjsを見てみて、「kag.skipToStop2();」あたりの動作をさせればいいのでは?
って思ったんだけど、そのままkag.skipToStop2();を実行させると、
クリックで止められないし、文字と画像の移り変わりがが超速になる。

そこで、
スキップボタン押した後=シフトキー押しっぱなしの状態
止めたいところで画面クリック=シフトキー離した後
にしなきゃ分からないと気づいんだけど、その一致のさせ方が分からない。
変数使いますか?どういう風に使えばいいですか?

誰か分かりやすいヒントください><

81 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 23:38:40 ID:AkU97XwL]
それはたぶん押してるキーをfunctionでチェックして条件を満たしていた場合(つまり押してる間だけ)のみ動作させるように設定してあると思う

82 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 23:56:31 ID:h9qVF/6U]
mainwindow.tjsの当該部分を検索して読む

83 名前:名前は開発中のものです。 mailto:sage [2011/02/08(火) 23:58:23 ID:WmbwpAnF]
自分の手に負えないなら やらない という選択がなぜ出てこない('A`)

84 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 00:12:05 ID:3MyrqpD5]
最低限は実現してるわけだから、細かいところは目を瞑ると言う選択肢は有りだと思う



85 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 00:57:11 ID:IIaYQrYV]
最近はskipToStop2()なんて関数あんのか。ひさしぶりにソース読んでみるかな。
だが2はやめろよ。

86 名前:>>59 mailto:sage [2011/02/09(水) 01:25:23 ID:VGAHWutI]
頑張ったら、何となくイメージしてた動作が出来たぞ!

前略、スキップボタンの中身です。
if(tf.skippp==1)
{
kag.skipKeyRepressed = true;
kag.skipMode = 4;
kag.actualChSpeed = 10;
kag.onPrimaryClickByKey();

if(sg(VK_RETURN) || sg(kag.supportReadingKey) || sg(VK_LBUTTON))
{
kag.cancelSkip();
tf.autoMode=0;
}
return true;
}
後略

ほら見ろ!m9(`・ω・´)
簡単に諦めろなんて言うもんじゃねぇ!
とりあえず徹夜せずに済んでよかった。

これだとこういうエラー起きるよって分かる優しい人がいたら、教えてください。
おやすみ。

87 名前:>>59 mailto:sage [2011/02/09(水) 01:29:00 ID:VGAHWutI]
あ、tf.autoModeはtf.skipppです。(´・ω・`)

88 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 07:20:15 ID:p6C7ENpw]
>>64
OKwaveにもポストしてるかな
「テキストボックス」「テキストレイヤー」という単語を使わず
吉里吉里の用語を使って質問を書き直してくれい

positionおよびlayoptコマンドで
メッセージレイヤを2つ以上(message0, message1,…)用意するってーのはだめかい
config.tjsはとりあえず放っておく(上で代用できます)

89 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 10:19:09 ID:tAEvQK1A]
>>88
回答ありがとうございます。
テキストボックスじゃないんですね・・・(メッセージボックスだと、ダイアログとかぶるから避けてこれにしたのですが・・・)
吉里吉里用語・・・また少しずつですが覚えていきたいと思います。

[position layer=message0 page=back frame="" opacity=0]
のframeの値でしょうか?
これをいじっていけばいい感じですかね。
後で試してみます。

90 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 11:25:48 ID:N9lDcceA]
>>86
単にお前のレスの書き方がウザがられてただけじゃね?
でも良かったな

91 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 12:04:43 ID:p6C7ENpw]
>>89
質問が
「メッセージレイヤのフレーム画像を途中で切り替えたい」ならば
frameの値(ファイル名)を変えていけばOK

リファレンスとテンプレの講座あたりは目を通して、頻出する単語を押さえておくべし

92 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 13:40:04 ID:mIt+z9j+]
どこで聞いていいかわからないから質問させて

TJSで画像をうにょうにょと歪む画像を作りたいと思って、あっちこっちのサイトでJSとかの関数を探してるんだけどなかなか見つからない。
作りたい効果は空間が熱の変化でかげろうみたいに微かに揺らめく感じが欲しいんです。
ラスター処理だと一定な動きになるし、ある座標を中心に水の表面がすこし盛り上がるような表現をすれば作れると思うのだけど、そう言う関数を探してます。
その手の良いサイトは無いものでしょうか?

93 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 17:30:54 ID:EkscP9Pk]
メッセージレイヤってのを複数立ち上げれば
画面上に三人同時に会話するシーンを作成出来るってこと?
Nスクなんて使ってる場合じゃねえ!

94 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 17:42:26 ID:SRsm9XoP]
そういや複数のメッセージレイヤーに
同時にテキスト流すって出来ないな



95 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 18:09:58 ID:QakpM+RU]
KAGからは出来ないね。lやpタグ打ち込まなければ『連続して』テキストを流すのはできるけど
同時並行ってワケじゃないからね。

やるなら各メッセージレイヤのdrawTextメソッドをTJSから直接呼び出してやるくらいか

96 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 18:17:56 ID:cbiIWL2V]
>>93
NスクもNスクで優れたエンジンだぜ
まあ俺はどっぷり吉里吉里にハマってるんで乗り換えはできないけど

97 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 18:57:39 ID:EkscP9Pk]
>>95
出来ないのか…
同時は無理、でも交互表示すれば共存は可能?
所謂立ち絵を流用するのではなく、カットごとにカメラを変えるようにしたいんだ
その上で、各キャラの側にテキストが出る様にしたい
つまりこれ→gamecs.jp/usr/kazuyuna/DSC00359.JPG

スクリプト数も減って、行数上頻繁に改ページしても滑らかな会話が可能になるし
立ち絵の種類を増やさなくても、その場その場で描けば良くなるから
細やかな感情表現が出来るのだ!っていう発想

Nスクで頑張ってたんだけど、奴はテキストを二つ同時に出して置けない
仕方なくスプライトでやってみたものの、バックログが残らないことに気づいた
吉里吉里さんなら何とか出来そうだと聞いて来ました

98 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 19:06:35 ID:mIt+z9j+]
>>97
それは可能
ちょっと前に上下で男と女の会話を分けてるの見たことある。
例えば、キャラの文字色とかで判断させてマクロ組むと多少楽。

99 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 19:07:44 ID:QakpM+RU]
「2個以上のメッセージ枠に文字を表示させること」は可能だよ。それが出来なかったら吉里吉里製ゲームの半数は
台詞と名前を同時に表示すること出来なくなってるんじゃないかな。モノによっては名前枠と台詞枠別にしてる所もあるし。
同時に出来ないってのはあくまで「2個以上のメッセージ枠に同時(マイクロレベルで同一時間)に文字を書き込む」ということ。
まあそれも、KAGじゃなくてTJS使えば実現はできるんだが、いささかメンドくさいのであまりやらないっつう話。

layoptタグとcurrentタグ、あとlaycountタグ辺りを併用すれば
要望の「各キャラの側にテキストが出る様にしたい」は実現できるよ。マクロ組んだ方が楽だけどね

100 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 19:31:48 ID:rCjtSzdS]
そう言いえば、TJS使わないとRPGによくある吹出しセリフとか表情のアイコン出せないよな。


101 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 21:39:36 ID:SRsm9XoP]
誰かすごい人
複数のメッセージレイヤーに同じタイミングでテキスト流すプラグインお願いします

102 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 21:49:55 ID:mIt+z9j+]
履歴レイヤーを拡張するとかすれば出来るんじゃない?

103 名前:名前は開発中のものです。 mailto:sage [2011/02/09(水) 23:30:26 ID:3vPeiy8g]
同ウィンドウだけど、あやえもさんのサンプル内に、ボイス同時再生があった気がする。
つまり文章も同時に表示されるハズだから、あれば参考にはなるんじゃない?
たぶん。
不確かな情報でごめん。

104 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 01:05:43 ID:9V96uMJp]
>>100
つ[pimage]



105 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 01:09:36 ID:pz54TsYF]
>>104
そういうんじゃねーよ

106 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 01:15:15 ID:9V96uMJp]
じゃあどんなやつだよw
こういう話題って個人個人で単語に対してのイメージぜんぜん違うから面白いな

107 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 02:13:23 ID:lVz4HYhb]
うーん

getlayerで

kag.getLayerFromElm(%['layer'=>'3', 'page' => 'fore']).colorize(32, 128, 1.0);

だとうごくのに、なぜ
var xxx=3;
kag.getLayerFromElm(%['layer'=>'xxx', 'page' => 'fore']).colorize(32, 128, 1.0);

これだとうごかないんだろう?
何か俺書式間違ってる?

108 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 02:14:35 ID:lVz4HYhb]
動かないというか、レイヤー0が動く
回避策は無いのかな?

109 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 02:25:12 ID:2LPQiPyl]
'layer'の部分の指定がおかしい
'xxx'('や"で囲う)というのは「'xxx'という文字列」を指定するために用いるのであって
「xxxという変数」を指定するときは囲っちゃいけない

110 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 02:29:00 ID:mGICTkST]
>>98
っっっっっっっっっっっっっっっしゃあああ!
マクロってのが何だかサッパリ分からんが、とにかく頑張ってみるぜ!
サブルーチンとは違うもんなのかね?
うっひゃあ初心者に逆戻りでい!

111 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 02:32:08 ID:lVz4HYhb]
>>109
一応そう思ってここに書き込む前にためしたんだけど、例外エラーがなぜかおきる
'3'でも一応動くしmainwindow.tjsを見ると+layerにしてるからそれでも動くのは動くみたいなんだけど、
むしろ厳密にint xxx;として 'layer'=>xxxとするとスクリプトエディタが起動してエラーが起きるの
これって不具合なのかな?
ググッても一応>>109の言う''無しでの書式で動くと書いてあるんだけど。
ちなみに232r2

112 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 03:31:01 ID:lVz4HYhb]
原因はわからないけど、なぜか
kag.getLayerFromElm(%['layer'=>string(xxx), 'page' => 'fore']).colorize(32, 128, 1.0);
とするとまともに動く
力押しでみっともないけど、とりあえずこれでいいやorz

113 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 03:34:13 ID:izJjB2zw]
>>112

getLayerPageFromElm の中で

if(layer[0] == 'm') { ... }

としてメッセージレイヤ指定かどうか判定してるので引数としてわたされる辞書の中の layer は文字列でないとエラーになるという
あたりまえの話。

つか、例外に行番号とかでてるだろ。それみれば一発でわかる話

114 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 03:38:21 ID:lVz4HYhb]
そこの意味が微妙にわからなかったorz
やっぱりmessageの頭文字を判定してたのか。
ありがとう。



115 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 18:56:31 ID:j2WDw41X]
ふと思ったんだが
var c = bbb.count;
for(var i=0;i<c;i++) aaa[i]=bbb[i];

aaa.assign(bbb);
って処理速度は同じ?

116 名前:名前は開発中のものです。 mailto:sage [2011/02/10(木) 19:33:36 ID:izJjB2zw]
後者のが速い

117 名前:115 mailto:sage [2011/02/10(木) 21:59:50 ID:j2WDw41X]
ありがとうございました。
assign使うことにします。

118 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 02:47:47 ID:2qR1M5vy]
俺だと

for(var i = 0; i < bbb.count; i++)

って書いちゃうな。
負荷としてはこっちの方が高いのかも知んないけど。

119 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 11:15:48 ID:eInOXOxl]
早い云々より前者と後者では使い道変わってこないか?

120 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 11:21:05 ID:ZOQcxSzf]
数千数万個の中身のある配列ならまだしも、数個十数個の中身の配列だったら
毎度毎度countで個数取ってもさほど変り無いと思うよ。そりゃ確かに一度だけcount取った方が
早くなったり負荷が下がるのは確かだけど、ミリ秒単位の差異を隠蔽せにゃならんほど複雑な処理を書くケースってそんなに有るかね?

無論、これが千や万になるっつったら毎度count叩くのは残念すぎるけど

121 名前:115 mailto:sage [2011/02/11(金) 12:25:27 ID:iQutSKcF]
>>118>>119>>120
参考になります。
配列の大きさはたいしたことないです。
ただ、タイマー処理の一部分なので、少しでも早くしたほうが良いのかなぁと思い
前者のように組んでいました。
で、後からassign思い出したっていう。

122 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 15:51:26 ID:gz2Pwne0]
>>92とちょっと質問似てますが、画像に新しい効果を加えるtjsを作りたいと思います。
効果の関数部分は出来てるのですが、具体的にそれをどう反映させれば良いのかその方法がわかりません。
画像を直接弄って変化させるdllは見つかるのですが、1から画像に手を加える参考に出来るtjsファイルが見当尽きませんでした。
これを参考にすれば良いと言うのはあるでしょうか?

123 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 16:06:38 ID:WSwbNMpH]
>>122
Layeにある getなんたらPixel/setなんたらPixel

で一応なんでもできる。使い方は吉里吉里リファレンス参照。
ただし機能的には問題ないけど速度的にはオーバーヘッドが大きすぎて
効果用の処理には厳しいよ。素直にCで書いて組み込むほうが良い。

124 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 17:04:54 ID:gz2Pwne0]
>>123
やっぱりCで組むしか無いのですね。
さすがにCまではやってないです。
また勉強しないといけないんですね・・・・



125 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 18:08:09 ID:2qR1M5vy]
一応、RGBα全部の数値を弄れるから、画像を好きな形に変える事は出来るんだけど、
全ピクセルに処理を施してsetして、それを複数枚…とかやったら、レスポンスが返って来なくなったw
リアルタイムとか先ず無理で、バッチ的に処理するにしても、とても実用に耐えるレベルじゃない。

>>123が言う様に、素直に下位レイヤー叩いた方が良いねぇ。

後、tjsで関数作ってるレベルなら、ポインタの概念とライブラリの中身さえ分かってしまえば、
そんなに難しいモンでもないから、そんなに気負う事もないかと。

126 名前:名前は開発中のものです。 mailto:sage [2011/02/11(金) 20:41:46 ID:cv99fiNS]
>>124
https://sv.kikyou.info/svn/kirikiri2/trunk/kirikiri2/src/plugins/win32/
ここのLayerExなんちゃらのソース見たら参考になるかな?
処理自体は出来てるなら、Cに書き換えて該当部分を差し替えれば動いたりして。

127 名前:122 mailto:sage [2011/02/11(金) 21:04:37 ID:gz2Pwne0]
>>125
試しにテストしてみましたが、やはり恐ろしく重たいですね・・・・・
確かにちょっと実用的とは言えませんでした。
他の手段を考えないと。

>>126
実は今丁度そのlayerExRasterが同じような処理をしてるようだったので見てたのですが、AsObjectNoAddRefなど重要そうな単語の意味がわからず、
さらにmainImageBufferPitchやmainImageBufferForWrite等の見慣れないプロパティをリファレンスで参照してさらに頭を抱えてました。

あとlayerExRasterを試しにコンパイルしてみようとしたのですが、何か足りないのかエラーでコンパイル出来なくてやはり初歩的な知識くらい無いとダメなのかと思いました。
(xp3filterなどいくつかはコンパイル出来たのでなにか足りないんじゃないかと思いますが )

128 名前:名前は開発中のものです。 mailto:sage [2011/02/12(土) 18:41:10 ID:S40hiv+3]
吉里吉里やtjs組むにはやっぱり秀丸がいいのかなぁ
ずっとmifesなんだが。。。。

129 名前:名前は開発中のものです。 mailto:sage [2011/02/12(土) 21:37:52 ID:M58LL2rf]
自分はEmEditorの無料版だなあ
自分に合ったヤツが一番だと思うよ

130 名前:名前は開発中のものです。 mailto:sage [2011/02/12(土) 23:10:02 ID:FyIidfIA]
秀丸とかの吉里吉里用セッティング?使ってる人使い勝手とかどうなんだろ

131 名前:名前は開発中のものです。 mailto:sage [2011/02/12(土) 23:11:57 ID:Z20utz7t]
質問です
KAGのボタンを後からTJSで非表示にしてみたら
クリックは出来ないのにキーボードからは選択できちゃうんだよね
確認してみたらfocusableはちゃんとfalseになってるし
どうしたらいいでしょうか?
MessageLayer.tjsを弄る必要があればどこら辺とか教えて貰えると助かります

132 名前: 冒険の書【Lv=1,xxxP】 [2011/02/13(日) 00:40:19 ID:Nddze20W]
慣れてしまったエディタが一番だと思う。
秀丸派だけれど、フリーソフト最強ならsakura editor。
広いカスタマイズができる。

mifesはiniファイルを直接弄れるので好きだったけれど、
最近のはムリっぽいね。

秀丸なら吉里吉里用のマクロも幾つかアップされているのがいい。
”秀丸でgrep”というツール(というかinfインストール)を入れることもお勧め。

133 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 00:50:48 ID:chaa4PxZ]
ずっとサクラ使ってるなぁ。
設定でそこそこの使い勝手は得られるので、替える動機付けに乏しくなる。

134 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 02:22:42 ID:L4kq+ciB]
KKDE2のバージョンアップまだー



135 名前:131 mailto:sage [2011/02/13(日) 02:26:33 ID:SiQe8osp]
MessageLayer.tjs弄ってたらできたわ
失礼した

136 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 12:42:14 ID:MiTt5ymI]
彼氏が秀丸使ってた、別れたい

137 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 16:32:54 ID:k84HpGk7]
初心者な質問ですみません。
タイトルをランダムに表示されるようにしたいのですが、
@eval exp="tf.title=intrandom(1,3)
[if exp="tf.title=1"]
[image storage="title1" layer=base page=fore]
[if exp="tf.title=2"]
[image storage="title2" layer=base page=fore]
[if exp="tf.title=3"]
[image storage="title3" layer=base page=fore]

これですると何度やっても3の画像しか出てきません。
対処法はありますか?

138 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 16:52:13 ID:9RIfJ8I3]
等しいかどうかの判定をするときは=ではなくて==を使わないといけないよ
=だと代入になってしまうので
「3と等しいか判定する」つもりなのだろうけれど「3を代入する」という意味になってる

あと、いろいろ閉じてないような気がするけど。"とか[endif]とか

139 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 17:10:12 ID:k84HpGk7]
あ、修正前の方貼っちゃった…
ありがとうございます。=の使い方を勘違いしてました。

140 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 17:29:04 ID:hs/nBGW+]
>>137

今日は暇だから俺がもう少し飛びにくいように書き直してやる

*titke_change
[eval exp="tf.title = intrandom(1,3)"]

[if exp="tf.title == 1"]
[image storage="title1" layer=base page=fore]
[jump target=*titke_change_end]
[endif]

[if exp="tf.title == 2"]
[image storage="title2" layer=base page=fore]
[jump target=*titke_change_end]
[endif]

[if exp="tf.title == 3"]
[image storage="title3" layer=base page=fore]
[jump target=*titke_change_end]
[endif]

[image storage="title1" layer=base page=fore]
[jump target=*titke_change_end]

*titke_change_end

ドヤ顔で出すほどのもんじゃないけどこれで最低限どんな値が返ってきてもとりあえずどれかは表示される。

141 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 17:45:20 ID:9RIfJ8I3]
いや、その値はintrandomで自分で生成してるんだから
気にするんだったらそこじゃないだろ…

気にするなら、なんかの事情でtitle1.jpg等が存在しない場合とかだろ
その場合は存在するもののうちからどれかをかわりに表示するみたいな

142 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 17:56:19 ID:hs/nBGW+]
それが案外そうでも無い。
ランダムで表示する画像が増減する事は結構あるし、そのときにintrandomの数値を間違って設定する事とか結構あるよ。
あと > < などでやってると、案外=が抜けてたり。
まぁ今回はintrandomの数値だけど、似たような状況はいくらでもあるから、飛びにくく作っておくのは大事。
存在しないものはTJS使わないと吉里吉里タグだけじゃ無理だからさすがに初心者にそれは難解過ぎ。

143 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 18:17:56 ID:9RIfJ8I3]
うーん、
バグ防止のために「一致してなきゃならないもの」が存在するのを嫌うのは
非常にもっともなことなのだけれど、
セーフティネットというのはバグの温床(見逃してしまう)でもあるので
その最後のcase defaultに相当するところはcond="!debugmode" とかをつけたいような
まあ思想の問題かと思いますが

というか、バグ防止のためにということであれば、今回については
ファイル名の一覧を ["title1", "title2", "title3"] のような配列で与えることにして
intrandomの範囲も「1,3」などと手動で直接書くのではなく
その配列の要素の数から自動的に取るようにするとかかね

144 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 18:18:57 ID:nsK8f981]
else タグと elsif タグの存在も思い出してあげてください



145 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 18:21:57 ID:9RIfJ8I3]
ちょww
「そうかelseやelsifってなかったのか、最近離れてたから記憶があいまいになったな」
って思ってた

146 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 19:08:53 ID:hs/nBGW+]
>>143
たしかにバグの温床にはなりやすいよね。
この条件なら飛ぶはずなのになんで飛ばずに動き続けてるんだろう?とか小一時間ミス探す事が時々ある。

.addで配列に組み込むのが理想だね。
.countで数は取得出来るし、便利なのよね。
ただ、駆け出しの頃は配列は俺にはとても難解だった。
一番使わなくても支障のない物だけど、使えるのと使えないじゃ格段の差が出るのよね。

147 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 19:12:37 ID:hs/nBGW+]
あと吉里吉里はとてもシステムとして安定してるから関係無いんだけど、ずっといろんなプログラマーのオリジナル言語でやってたから、ついコマンドが返す数値を100%信用しない変なクセがついてしまってるのよ。
特にランダム系は経験上かなり不安定な事が多かったせいでついね。

148 名前:名前は開発中のものです。 mailto:sage [2011/02/13(日) 23:28:42 ID:p1EMTXxB]
質問です。
inputタグで表示される画面を吉里吉里画面の中央に表示させることはできるでしょうか?
今現在、ディスプレイ中央に表示されてます。

149 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 00:20:07 ID:vDQ+aOmt]
え?
>今現在、ディスプレイ中央に表示されてます。
どうしてこうなった!?

150 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 01:27:12 ID:Do9qEUJ1]
想像してワロタww

151 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 02:36:11 ID:xwSZlZFK]
>>148 kagやtjsだけでは無理。
自分も質問です。
hiddenMethodに渡す引数と戻り値を教えてください。

152 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 12:01:36 ID:E8mP+/zs]
すみません、初心者でいくつか理解出来ない事があって質問です。
音を鳴らす関数のサンプルとしてこう言うのを貰いました。

function Hist_sound( sound,buf )
{
return "kag.se[buf].stop(), kag.se[buf].play(%[ storage : '" + sound + "'])";
}

まず'" + sound + "'と言うのはどう言う事をやってるのでしょうか?
storage名をstringで持とうとしてるのかと思いますが、前後の+の意味と2回括ってる意味がわかりません。
次にreturnの後の""で全体を括ってる意味もわかりませんし、中で""を使ってるのになぜ使えるのかもわかりません。
またこれは中身を見る限り単に音を鳴らしてるだけのようなので、

function Hist_sound( sound,buf )
{
kag.se[buf].stop();
kag.se[buf].play(%[ storage : '" + sound + "']);
}

これではダメなのでしょうか?

153 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 13:36:49 ID:Y5ght41y]
その関数は「音を鳴らす関数」ではなくて「音を鳴らすためのコマンド文字列を作る関数」です


154 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 13:51:51 ID:E8mP+/zs]
>>153
hactに組み込まれていた部分なのでまさにその通りだと思うのですけど、1つは上で書いた疑問は他のところを読んでも出て来ると思いましたので質問だったのですが、

コマンド文字列を作る関数と言うことは、これを呼ばれると一体何をどのように返すのでしょうか? ""等の読み方が分からずどう言う事をしてるのかぼんやりとしか分からないのです。
初歩的で申し訳ありません。



155 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 14:01:35 ID:E8mP+/zs]
少し検証してわかったのですが、"'"'テスト'"'"みたいな入れ子だと""の中の''の中の""は使えるのでしょうか?
とすると+ sound +と言うのは、soundと言う引数では無く、単に+ sound +と言う文字列を返してるだけなのでしょうか?
すると受け取ったsoundと言う引数はどこに?と言う事になるので、たぶん違うとおもうのですけど。

156 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 14:05:32 ID:Y5ght41y]
まずは TJS のリファレンスを一通り眺めるくらいはしましょう。

"" は文字列をしめすくくりです。TJSでは便宜のため '' と "" いずれも文字列の記述につかえて、
また、' は "" の中でエスケープせずにつかえて、" は '' の中でエスケープせずに使えます。
詳細は「文字列即値」でリファレンスを検索してください。

そして、その関数は、

"kag.se[buf].stop(), kag.se[buf].play(%[ storage : '"

sound (変数。中身は文字列)

"'])"

の3つの文字列をつなぎあわせようとしています。結果返されるのは

kag.se[buf].stop(), kag.se[buf].play(%[ storage : '渡されたファイル名'])

という文字列です。

なお単にならすだけなら kag.se[buf].play(%[ storage :sound]); で良いです

余談ですがこれバグってますよね。buf が展開されてません。そのままだとたぶんエラーでしょう。もしかしたら
たまたま buf という変数があって鳴ってるかもしれませんが……。その関数くれた人とやらに確認したほうがよいです

もう一つ余談ですが、文字列への変数展開はTJSでは次のように書くことができます。詳細は @ でTJSリファレンスを検索のこと。

return @"kag.se[${buf}].stop(), kag.se[${buf}].play(%[ storage : '${sound}'])";

157 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 14:42:23 ID:E8mP+/zs]
>>156
細かい説明と指摘本当にありがとうございます。
おっしゃる通りに、貰った物がこちらでは鳴らなくて、どこが悪いんだろうかと探してる時にこの関数を見つけて読み方が分からずこのスレに泣きついてしまいました。
相手側の方ではこれで鳴ってるそうなので、違う物を渡されたのか、それとも何か勘違いしてる可能性が高そうです。
本当に助かりました。
これからもう一度相手側に確認取ってみます。
ありがとうございました。

158 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 15:39:50 ID:E8mP+/zs]
"kag.se[" + buf + "].stop(), kag.se[" + buf + "].play(%[ storage : '" + sound + "'])"

これから試すつもりですけど、たぶんこうじゃないとダメぽいですね。
returnの後の”に対応する”が;の前の奴だと勘違いしたまま+の前の奴が対応してた"だと思いもしなかった自分のバカバカ。

159 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 21:11:18 ID:RqYc83Xu]
evalするより関数渡したほうがオーバーヘッドも少ないしセキュアだと思うんだが。
簡単に乗っ取れるよね、それ。

160 名前:名前は開発中のものです。 mailto:sage [2011/02/14(月) 23:20:56 ID:0qKfv/Yz]
質問させてください。
縁取り文字使用時、連続ダッシュ(――)で字間に縁の色が入ってしまうのですが
これを綺麗に繋ぐようにする方法ってないでしょうか?
字間を調整してみても、後ろ側の縁に塗りつぶされてしまうようなのです。

161 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 02:04:40 ID:4LFE3fe/]
>>160
「■複数の横棒(───)を書く時は」
ttp://www.geocities.jp/keep_creating/DojinDOC/kirikiriSmallTips.html#multibar
…ってそのものずばりだと思うが如何。


162 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 03:04:43 ID:Rse+nHdS]
罫線とか三点リーダが連続するときはパーサ側で1文字づつchに分解するのをヤメて一度スタックに積んでもいいと前に思ったことがあるなぁ。
それに、いちいちばらすと文字列のサイズとか前進幅とか狂うしさ。

163 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 06:59:25 ID:Ag0aN+GZ]
文字関連の弱さに定評のある吉里吉里

164 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 08:12:32 ID:Dav6HMUs]
>>160
有り難うございます。
お陰様で理想通りの表次になりました。



165 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 08:13:19 ID:Dav6HMUs]
>>161宛です。
すみません。

166 名前:名前は開発中のものです。 mailto:sage [2011/02/15(火) 14:36:48 ID:OjWV4otJ]
質問よろしくお願いします。
複数の選択肢の中から2つ選ぶと次に進むという構成で
1つ目の選択肢を選んで選択肢群に戻ってきた時に
その選んだ選択肢を再度選べないようにするにはどうしたらよいでしょうか?
タグリファレンスを見ながらなんとかやって来たのですが
本当に分からなくなってしまいました
ご教授よろしくお願いします。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<307KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef