■吉里吉里/KAG/TJS雑談質問スレ■その18at GAMEDEV
■吉里吉里/KAG/TJS雑談質問スレ■その18 - 暇つぶし2ch171:名前は開発中のものです。
09/07/01 20:11:30 dXLwZTw+
f.flagA*1.5=f.ansという式を作っています
f.flagAが奇数だった場合、答え(f.ans)が小数点になってしまうのですが、小数点以下を切り上げることって出来ますか?

f.flagA=5の場合、5*1.5=7.5 →8にしたいんです
TJSにそれらしきメゾット?があるようなのですが、TJSは怖くて手が出せません…どなたかアドバイスお願いします

172:名前は開発中のものです。
09/07/01 20:31:18 cglbBwue
[eval exp="f.flagA = 3"]
[eval exp="f.ans = int(f.flagA*1.5)"]
[emb exp="f.ans"]

>TJSは怖くて手が出せません…
evalの中で実行してるのはTJSだっちゅうねん

[eval exp="f.flagA = 3"]

だけだって立派なTJSの入ったコードだ

173:名前は開発中のものです。
09/07/01 20:38:26 J8oA3/0d
>>172
それは切り捨てになるぞっと

切り上げなら f.ans = Math.ceil(f.A * 1.5)

Math.ceil 切り上げ
Math.floor 切り下げ
Math.round 四捨五入


174:名前は開発中のものです。
09/07/01 20:44:11 dXLwZTw+
>>172
すばやい回答ありがとうございます
ですが、出していただいた式だと、小数点切捨てになっているようです……5*1.5=7.5→7になりました。
小数点以下を切り上げて、5*1.5=7.5→8にしたいんです。可能でしょうか?


KAGがTJSで動いているっていう理屈はわかるんですが、私には複雑怪奇なものにしか見えないんです…。
KAGリファレンスは何がどうなるって例をたどって読み進められるのですが、TJSリファレンスは専門単語が多すぎて挫折してしまいます。
{}のなかに{}があるし…

いちど、IF文からはじめてみたのですが、文法エラーです(syntax error, unexpected "var", expecting ";")がでて詰まりました。
文の終わりには、;がちゃんとついているのに…

175:名前は開発中のものです。
09/07/01 20:46:26 cglbBwue
>>173が突っ込んでくれたのでそっち参照
切り上げね

176:名前は開発中のものです。
09/07/01 20:53:40 dXLwZTw+
>>173
出来ました!ありがとうございます!!




途中、愚痴っぽくなってすいませんでした


177:名前は開発中のものです。
09/07/01 20:54:18 TyOkN/2c
if文は
f.test = 1;
if (f.test == 1) {
  System.inform("f.test は 1 です。");
}

こっから始めればいい

178:名前は開発中のものです。
09/07/02 03:34:44 eNBSP15x
startup.tjsにf.test=1とかいてはまりそうだな

179:名前は開発中のものです。
09/07/02 07:59:58 mYmqCXmv
全角スペース使ってエラー吐かれているに一票

180:名前は開発中のものです。
09/07/02 08:45:31 IRGYzgYf
>>170
[]で囲んで文字列足し算をすればいいんですね。
Fと[の間に.が要らないというのも、示されなければ絶対に気づかなかったと
思います。
テストしたらうまく行きました。ありがとうございました。

181:名前は開発中のものです。
09/07/02 10:44:23 cyxHvUZC
KAGでいう変数にvar使って怒られるとか

182:名前は開発中のものです。
09/07/02 10:59:13 fxVo6HwF
var f.flagA = 1;
とか?

183:名前は開発中のものです。
09/07/02 22:49:18 vxevCk16
識別子にキーワードつかって怒られるって意味だろJK

184:名前は開発中のものです。
09/07/03 01:06:44 ReMRd5Re
ノベルゲー用にKAGの必要の所だけざっくり覚えてブラックボックスな言語として使うなら吉里吉里は優秀な開発ツールだと思うけど
真剣にTJS覚えて本格的にやる価値は無くね?
色々と複雑な処理も出来るけどそこまでやるとなると習得の難易度的にjavaやCとたいして変わらない気がする。書式も似てるし。
それなら汎用性とかを考えてメジャー言語覚えたほうがよくね?
TJSの基本だけ触っての感想なんだがこれから本気で勉強するかどうかもあってTJS極めた人の見解を聞きたい

185:名前は開発中のものです。
09/07/03 01:21:25 AiqetR7F
>>184はよくわからんバグが出て自分だけで直す恐ろしさを知らない

186:名前は開発中のものです。
09/07/03 01:24:26 fhXCPmZ5
ACTとかSTGとかでなければ
必要十分な処理能力でゲーム作れるからTJSで問題ない
ただ、SLGの移動範囲計算とかキャラの移動力上げると処理重くなって困る

187:名前は開発中のものです。
09/07/03 01:27:14 IITjttyA
TJSが1000m級の山だとしたらCとかJavaは3000m級だろう。
メジャー言語を学ぶうえでTJSの経験はある程度まで通用する。
一線を越えると何の役にも立たない。
ただ、TJSが回り道に感じるようなら最短距離を行こうとどのみち苦労する。と思う。

188:名前は開発中のものです。
09/07/03 01:27:16 JPl/ynjc
最終的にはどの言語もある程度似たようなことになる
CとJavaとTJSを勉強した俺の感想

189:名前は開発中のものです。
09/07/03 01:27:35 BcCu26qd
tjsは吉里吉里専用の言語ってわけでもないが、
それはさておき、

オブジェクト指向言語の書き方なんてどれも同じだから、
1つなんでもいいから勉強しときゃ、どの言語だろうがリファレンス片手に組めるようになるし
勉強するのがtjsだと楽しいならそれでもいいんじゃないの、とかなんとか

190:名前は開発中のものです。
09/07/03 01:30:25 fRRlTegR
>>184
吉里吉里のマニュアル熟読した上で同機能のモジュールを実装するコストかんがえてみ。
ゲーム用の基礎システムとして多機能な上に非常に安定してるのが大きい。
一応指摘しとくと、別に TJS にこだわる必要はない。C++ でどんな処理でも書いて組み込める

191:名前は開発中のものです。
09/07/03 01:32:14 ZlWwWB47
俺はまだtjs初級レベルだけど、kagの延長で覚えたし
ホビーでスクリプターやってるからそういう発想はなかったな…
あたりまえだが、価値どうこうは何を目指すかによるんだろうね
俺はtjsかなり楽しい

192:名前は開発中のものです。
09/07/03 03:52:53 81N0WH4Z
>>184
フリーゲームレベルの演出なら無理せんでいいと思う。それでも変数とか必要な知識はいくらかあるけど
むしろ吉里吉里/KAGじゃなくてもNなんちゃらとかLiveなんちゃらでもいいんじゃね。とか思うわ
俺もCとかJavaをかじったあとに低コストでTJS覚えたから参考にならんだろうけど

193:名前は開発中のものです。
09/07/03 04:00:28 AiqetR7F
プログラムを覚えてそれを職業にしたいのにまずtjsを極めようとするならそりゃアホかと思うけど
中高生とか情報系の経験薄い大学1年生とかが入門用として覚えて途中からC++やJavaに
移行するって形ならありだろう

194:名前は開発中のものです。
09/07/03 04:04:46 94OiRuaK
>>190
>C++ でどんな処理でも書いて組み込める

そんなわけない。コストというものがある。
本当にそうならとっくに3は出てる。

195:名前は開発中のものです。
09/07/03 05:02:45 fRRlTegR
>>194 は文の一部だけ切り取ってなにがしたいんだろう(苦笑)

>>184
もうちょっと補足。TJS をがっつり覚えて損になることはないよ。
Java や C だけなプログラマってのは今時使い物にならんです。スクリプト言語は何かしら経験しておくほうがいい。
TJS は Javascript 系言語の一種というのもあって、書き方が応用できる範囲は案外広い。
現在のゲーム開発の現場では、ADVに限らず、低級スクリプト/高級スクリプト/C++ といった多重構造で
言語を使い分けるのはもはや常識なので、そういったスタイルに慣れるという意味もある

TJS のマイナーさが気に入らないのなら、コンシューマでも利用例が増えてる squirrel という選択もある。
あとは stackless python あたりのバインドもあると便利かもねぇ

196:名前は開発中のものです。
09/07/03 05:15:13 AiqetR7F
(苦笑)

197:名前は開発中のものです。
09/07/03 05:22:40 /NTPHc2S
>>196 は文の一部だけ切り取ってなにがしたいんだろう(核爆)

198:名前は開発中のものです。
09/07/03 05:46:28 HYiofXa1
>>197
ワロタ。うまいなー。

Perlの経験だけは他に生きた気がしない。最近の書き方してればまた違ったのかもしれないけど。
せいぜい言語を覚える根気やコツを養った程度。


199:名前は開発中のものです。
09/07/03 05:47:10 81N0WH4Z
>>193
Windowsで手軽に動かせる処理系だし結構言語の中では敷居低いかもね
もし残念なことに職業にしたいとか考えてるならコンソール叩いてコンパイルしてとかに抵抗感じないほうがいいけど

どっちにせよ、TJS問題なく使える人はいても極めている人なんてそうそういないだろうし、極めることに費やす労力は余計だと思う

200:名前は開発中のものです。
09/07/03 07:09:26 EaYsDRhb
極めるってどういう状態?

201:184
09/07/03 09:09:15 ReMRd5Re
一日平均レス数一桁の過疎スレかと思いきや、お前らどこに潜んでたんだ

専用スレだから盲目的に吉里吉里マンセーの流れもありえるかと思ったけど
客観的な意見で参考になったzeありが㌧
やっぱりtjsはあくまで登竜門としての利用に留めるのが良さそうだなぁ
C++やってみようかな

202:名前は開発中のものです。
09/07/03 09:55:18 cTU1PiSo
>>201
そういう視点は?だけど。

おまいさんは、プログラムというのを舐めているね。

203:名前は開発中のものです。
09/07/03 11:59:13 EaYsDRhb
さっき見たら
おさかな定食の様子がちょっとだけ変わってた
いつから変わってたんだろう?
とりあえず生きてるみたいで安心した
マジでフェードアウトかと思った

204:名前は開発中のものです。
09/07/03 15:52:01 ZlWwWB47
>>201
話題がないから過疎に見えるけど、住民は非常に多いんだよ、昔から
話題があれば、夜中でもたいていは即レスがある

205:名前は開発中のものです。
09/07/03 16:59:53 o44LWZNr
>>168
それは記事が古いかな
実際のところは、少なくとも吉里吉里がつかってる範囲でのオーバレイ処理(動画再生用)
では、AERO がオフになることなくそのまま動作します。

ただし上下反転したり、ジャギジャギになったりとかの、ドライバ由来の環境依存問題が噴出しがちなので、
mixer にしておいたほうがなにかと無難です。ところが、古い環境だと mixer がまともに動かなかったりするので、
デフォルトは XP/Vista を境に overlay と mixer を切り替え指定して、さらに、なんらかの手段で
外部から切り替える方法を準備しておくのがサポート的には無難です

なお、レイヤ再生するとこの種のドライバ問題とは無縁なのですが、これはこれで格段にCPUパワーを喰らいます。

>>167
theora のドライバとかあると、選択肢は広がるかもねぇ

206:名前は開発中のものです。
09/07/03 17:09:20 TueWXnFh
質問させてください

すでに存在しているボタンの画像は、
kag.fore.messages[0].links[0].object.loadImages("画像")
などで変更することができるようなのですが、
ボタンをクリックしたときの動作(storageやexp)は、どうすれは変更できるのでしょうか?
onExecuteやonClickを試してみたところ、キーボード操作には効果がなく、
トランジションすると反応しなくなってしまいました

207:名前は開発中のものです。
09/07/03 23:59:36 nypmma6j
>>198
>Perlの経験だけは他に生きた気がしない。
カオスなのがすきならrubyやればいいんじゃね?

まあ>>184はCに手出して気づいたらLua組み込んでんのは間違いないなw

208:名前は開発中のものです。
09/07/04 02:45:58 PzHclKwZ
透過pngを作って前景に表示したんだけど、透過しない
同じファイルをブラウザで表示してみると透過してる
どうしてでしょうか?FAQですか?

209:名前は開発中のものです。
09/07/04 03:13:55 RRxZ5x6P
同梱ツールのkrkrtpcをつかって透過指定しなおしてみたらどう?

210:名前は開発中のものです。
09/07/04 03:56:36 PzHclKwZ
違うソフトでpng作り直したら透過しました。
自己解決。

211:名前は開発中のものです。
09/07/04 10:48:09 7CjaLZZx
>>206
KAGの設計思想的には全画面を毎回作り直すのが正しい。
どうしてもいじりたければ、MessageLayer.addButton の中身をよめばどう構築されてるかは
わかるから、そこをみて考えなされ

storage や link[0].storage とかの形で格納されてるのでそれ書きかえれば変わる。
exp はサウンドとあわせて展開されて object.onenter とかに定義されてるので、
組み替えるには再構築が必要。



212:名前は開発中のものです。
09/07/04 11:01:20 GMnlofNI
>>211
当方、初心者です。
今始めてのゲームをKAGで作っているところですが、メッセージレーヤーを5分割
して、常時出しておく「メニュー領域」「サブメニュー領域」「ステータス
表示領域」と毎回書き換える「短いメッセージバー」「メイン画面」みたいな
構成にしようと考えていたんですが、そういう仕様にはKAGは合わないって
ことなんでしょうか?

213:名前は開発中のものです。
09/07/04 11:10:32 7CjaLZZx
>>212
そういうのは、プラグインを書いてそちらで描画内容を管理するのが一番綺麗ではある

とりあえず、メッセージレイヤを複数使って他に影響が及ばないようにするのが妥当かな。
個別のメッセージレイヤに対して描画内容を全部更新するようなサブルーチンを作って
必要なタイミングでそれぞれ呼び出すようにすればいい

214:206
09/07/04 11:21:16 DLIT25S1
>>211
アドバイスありがとうございます
難しそうですが、ひとつ腰を据えて調べてみます

215:名前は開発中のものです。
09/07/04 12:54:28 7yGnbw2n
最新の安定版Lzhってディレクトリ階層おかしくね?
全部同じディレクトリに解凍されて同名のファイルが上書きされるんだけど

216:名前は開発中のものです。
09/07/04 13:07:38 IdHzPC+T
おまいさんの解凍ソフトの設定を確認した上で言ってるんだよな?な?

217:名前は開発中のものです。
09/07/04 14:09:27 HVj23TY0
Lzhってそんな圧縮ファイル形式だけ言われても
そんなの知らんがな

218:名前は開発中のものです。
09/07/04 14:24:44 UKQegBec
そんなのならんなぁ。

219:名前は開発中のものです。
09/07/04 16:56:38 GMnlofNI
>>213
すいません、間違えました。メッセージレーヤーを5分割ではなくて、画面を
5分割するように、メッセージレーヤーを5つ作ったと書くべきでした。
それで毎回[cm]じゃなくて、[er]で消去してから書き直す予定です。
[cm]はたぶん1回も使わない予定。
そういう仕様なら大丈夫ですよね。
 
211の方の
>>KAGの設計思想的には全画面を毎回作り直すのが正しい。
というのを読んで[cm]使った方がいいのかあ? と思いまして...

220:名前は開発中のものです。
09/07/04 20:50:27 7CjaLZZx
>>219
ほい、それなら問題ないかと

「全画面」は「メッセージ窓に表示してるものは全部」とよみかえてください


221:名前は開発中のものです。
09/07/04 22:38:53 BUWFKr49
スレチだったも申し訳ない
iphoneで吉里吉里スクリプトのゲームを動作させるアプリってありますでしょうか?

222:名前は開発中のものです。
09/07/05 00:21:48 Tgc0JPaq
C++のソースをobj-cに移植する変態さんまちだね。
まあエンジン作った方が早いがな。

223:名前は開発中のものです。
09/07/05 00:51:26 F28upsMR
>>222 レスありがとうございます
↓こちらのブログの方が話で触れていますので、
もうあるのかなと思ったのですが上町ですね
URLリンク(d.hatena.ne.jp)

224:名前は開発中のものです。
09/07/05 14:29:45 JYa2Rb/c
System.informでメッセージダイアログを出すときに、任意の効果音を鳴らすことって出来ますか?

225:名前は開発中のものです。
09/07/05 15:16:00 1Y3deg3p
// AfterInit.tjs にでもこれを↓
if( typeof( System.super_inform ) == 'undefined' ) {
System.super_inform = System.inform;
System.inform = function(text, caption = '', buf = 0, storage) {
kag.se[+buf].play( %[ storage : storage ] ) if storage != void;
super_inform(...);
}incontextof System;
}
// System.inform('ok',,,'file.ogg');

226:名前は開発中のものです。
09/07/05 15:28:04 1Y3deg3p
でもティロンが鳴っちゃうから使えないな。
頑張って自作ウィンドウ作るしか思いつかん。

227:名前は開発中のものです。
09/07/05 18:17:54 QkxtrPle
KAGのフェード機能は変化する速度が一定しかできないみたいだけど
三角関数を使って緩急を付けるサンプルどこかにありませんでしょうか?

228:名前は開発中のものです。
09/07/05 21:15:22 9x8C+gOG
KAGだと口がでてないねぇ

1. KAGLayer.tjs で super.beginTransition 呼び出す前の部分に以下を追加

※トランジションの callback パラメータについてはマニュアル参照。
値を保持する必要があるのでオブジェクトのメンバメソッドを渡すようにする

elm.callback = (new Scripts.eval(elm.callback)(+elm.time)).callback if elm.callback !== void;

2. コールバック用のクラスを準備

class SinCallback {
var time, first;
function SinCallback(time) { this.time=time; }; // 規定の時間を保存
function callback() { // トランジション用コールバック
var tick = System.getTickCount(); // tick値取得
first = tick if first === void; // 開始時間取得用
tick -= first; // 開始時間からの差分にする
tick = time if tick > time; // 過ぎてる場合の補正
return time * Math.sin(Math.PI/2*tick/time);
}
};

3. KAGから指定

@trans method=crossfade time=2000 callback=SinCallback

229:名前は開発中のものです。
09/07/05 22:03:22 EME4bbtk
質問です。
タイトル画面で背景を縦スクロールループさせたいのですが、思うように動きません。
(スクロール時に一瞬減速・停止する。スクロール中にボタンアイコンが表示されない 等)

何か良い解決策は無いものでしょうか?
ご教授のほどよろしくお願い致します。m(__)m

230:名前は開発中のものです。
09/07/05 22:14:41 HvkvR21p
自作右クリックサブルーチン(tjsではない)の
ボタンでタイトル画面に戻った後、
タイトル画面のボタンからロード画面(おさかな製)開いて、また閉じて戻ると
タイトル画面にクリック待ち記号が何故か表示されてしまうのですが、何でかわかりますか?
メニューボタンの”最初に戻る”では起きませんでした。

右クリックサブルーチンの記述
[button graphic="btn_title" target="*title"]
*title
[unlocksnapshot]\
[gotostart ask="true"]\
;キャンセルした場合
[jump target="*rclick"]\
[s]\

231:名前は開発中のものです。
09/07/06 01:03:53 sHewBZax
>>230
サブルーチン中に無駄な改行やスペースやエスケープ忘れがあるんじゃね?

232:名前は開発中のものです。
09/07/06 23:01:29 nCzrjcCX
>>225,226
うーん、やっぱり難しいですか……。
ありがとうございました

233:名前は開発中のものです。
09/07/07 13:06:53 6Kcrko8G
吉里吉里はプログラムの知識とか無いと作れませんか?

234:名前は開発中のものです。
09/07/07 13:14:58 QX+COwx9
無くても作れる。

235:名前は開発中のものです。
09/07/07 13:44:13 FVX6FYmE
しかしセーブはメニューバーから出る

236:名前は開発中のものです。
09/07/07 21:41:20 ZpWVyrFc
いくつかある受け答え式の講座サイト見てみたら全部後半の生徒役のキャラの読解力が半端無い
最初は変数とかの意味ですら質問し返してたのに後半になると初見のタグやメソッドも逆に予想で解説し始めやがる
一緒に学んできたはずなのにものすごく置いていかれた気分だ

237:名前は開発中のものです。
09/07/07 21:47:51 slPxRrH4
>>236
あるあるwwwwwwwww

238:名前は開発中のものです。
09/07/07 23:59:35 fmtSqsVt
>>236
わかるw

239:名前は開発中のものです。
09/07/08 03:04:34 qEStm9se
まあ命名規則と名前見れば何するか分かるからね。
最初は言語仕様が分からないだけだし。
解説役が生徒になるのは文の書き方がなってないだけで上記とは関係ない。

240:名前は開発中のものです。
09/07/08 08:32:11 kDhHIqy2
>>239
何か勘違いしてね?

241:名前は開発中のものです。
09/07/08 08:57:02 zrex9Lz5
>>236へのレスとして完全に間違ってるわけではないんだが
なんか方向性がズレてるよな

242:230
09/07/08 21:18:39 Tj+OcJPV
>>231
ありがとうございます。

改行は一応チェックしたんですが、どこか見落としがあるのか結局わからず
ロード画面に飛ばなければこの症状がでないんだけど不思議だ
マクロあたりも見直してみます

243:名前は開発中のものです。
09/07/09 12:57:13 pOdXkDiI
リンク先を変数によって指定することは出来ますか?
[eval exp = "f.chapter = f['*chapter' + f.number]"]
[link target = f.chapter][emb exp="f.number"][endlink]
f.number が1なら *chapter1 に、2なら *chapter2 に進むリンクを大量に貼る
ためです。
上の場合『ラベル f.chapter が見つかりません』というエラーが出ました。


244:名前は開発中のものです。
09/07/09 14:14:11 kIG0qZhM
>>243
KAGリファレンスを「エンティティ」で検索しる

245:名前は開発中のものです。
09/07/09 21:29:00 OUC2GtU0
ここのURLリンク(homepage1.nifty.com)
不定形なダイアログのように、System.inputStringのウィンドウを
不定形というか画像を使ってカスタマイズしたいのですが、
住人のお知恵を拝借したいです。

やはり新たにtjsファイを作成したほうがいいでしょうか
ちなみに当方、書かれていることはだいたいわかっても
1からtjsを扱えないショボさです

246:名前は開発中のものです。
09/07/09 23:04:52 YopKEc0Q
>>245
結局なにがしたいのかがよくわからない。画像差し替えるだけでいいの?
それなら、
system/YesNoDialog.tjsの61行目からでプライマリレイヤいじってるところを
loadImagesにして、画像にさしかえて調節すればいいと思うんだけど

247:名前は開発中のものです。
09/07/09 23:33:01 OUC2GtU0
>>246
わかりにくくて申し訳ないです
YesNoダイアログはすでに画像でやる方法はあるけど、
それと同じような事を、システムインフォーム(インプット入力のウィンドウ)で
やりたいということです

248:名前は開発中のものです。
09/07/09 23:40:48 9cx8q8Jt
あれてwin32APIとか使ってんじゃないの?
ウィンドウリージョン設定したWindowクラス作ればいい。

249:名前は開発中のものです。
09/07/09 23:46:59 YopKEc0Q
>>247
あ、2行目読み飛ばしてたわ。すまんね、そういうことか

>>248でももう言われてるけど
Windowクラス作ったほうがいろいろ応用もできるし、
それがいいと思う

250:名前は開発中のものです。
09/07/10 12:28:02 CCO0VDWd
>>244
解決しました。ありがとうございました。

251:名前は開発中のものです。
09/07/10 15:40:19 BuHQoCy0
245です
>>248-249 ありがとうございます
ただ、当方情けないほどのコピペスクリプターなので
もう少しヒントをお願いします

252:名前は開発中のものです。
09/07/10 16:36:32 bhP+8KRu
>>245の目的は

不定形の文字入力ウインドウを、場に出して、ユーザーに文字入力させたい

って事だろうから

System.inputStringを、あれこれいじらなくても
以下の組合せで、 やりたい事は実現できるのでは?

[font]
[locate]
[edit]
[commit]
メッセージレイヤーの切替
任意のメッセージレイヤーの詳細設定

253:名前は開発中のものです。
09/07/10 18:49:00 Iu7R9PxR
文字の表示される大きさを一定にする(、などで小さくならない)方法って、Config.tjsからいじればできますか?

254:名前は開発中のものです。
09/07/10 19:29:19 caNiT3lx
できません

255:名前は開発中のものです。
09/07/10 20:06:36 rIOq6aDP
>>253
「プロポーショナルフォント」でググってみること

256:名前は開発中のものです。
09/07/10 20:35:44 Iu7R9PxR
>>253 >>254
ありがとうございました。

257:名前は開発中のものです。
09/07/10 21:46:42 7dLI1pzz
一文字づつ描画したプロポーショナルフォントを横に並べるとガタガタになると思うんだが・・・。

258:名前は開発中のものです。
09/07/10 22:35:20 /2iAcZgA
グリフ一つ一つの情報を元に正しく計算すればガタガタにはならない
吉里吉里でどうかはともかく、そういうやり方はゲームではごく一般的

259:名前は開発中のものです。
09/07/10 23:09:42 v1PdCyDn
んな当たり前なことでいちいち上げるな

260:名前は開発中のものです。
09/07/11 02:16:37 Tn2otcML
>>44で質問させていただいたものです。

アドバイスどおりsaveメゾットでテキスト出力は出来たのですが、リリース形式にするとアーカイブにデータを書き込むことはできませんと表示されます。
data.xp3にする前はちゃんと出力するのですが……。
どうすればいいのでしょうか?

261:名前は開発中のものです。
09/07/11 02:57:56 sOyINYCk
セーブデータの保存先を利用したら上手くいかんか?
kag.saveDataLocation + 'ファイル名'

262:名前は開発中のものです。
09/07/11 03:50:05 Tn2otcML
>>261
やっぱりエラーが出ます……該当部分と思うところだけ抜き出してみましたが、これではダメでしょうか?
吉里吉里2 version 2.28 stable rev. 3です

[iscript]
var flagNo=f.title+1;
var savedata=[];
savedata[0]=test;
savedata[1]='test2 '+f.test;
kag.saveDataLocation = "savedata"; //入れてみました
savedata.save(flagNo+'&'+'savedata.txt','');
[endscript]




03:33:28 アーカイブにデータを書き込むことはできません at test.ks(9314)[(top level script) global]
03:33:28 script exception : アーカイブにデータを書き込むことはできません at mainwindow.tjs(2558)[(function) onConductorScript]
03:33:28 アーカイブにデータを書き込むことはできません
03:33:28 script exception : アーカイブにデータを書き込むことはできません at conductor.tjs(180)[(function) timerCallback]

263:名前は開発中のものです。
09/07/11 05:02:52 B0YMwGZJ
引数に入れる保存名はパスで指定じゃなかったっけ?

savedata.save(kag.saveDataLocation + '/' + flagNo+'&'+'savedata.txt','');
>>261が言いたいのは多分こんな感じ、違ってたらすまん。

264:名前は開発中のものです。
09/07/11 09:06:24 Tn2otcML
>>263
無事出力できました! 本当にありがとうございます
最初から最後まで、みなさんに助けられてばかりでした。

265:名前は開発中のものです。
09/07/12 07:53:13 9H84lt2d
@iscript
function drawButtonCaption(num, caption, size)
{
with (kag.current.links[num].object)
{
.font.height = size; // ボタンのフォントの文字高さを設定
var w = .font.getTextWidth(caption); // 文字列を描画したときの文字列幅を求める
var x = (.width - w) \ 2; // ボタン中央に表示されるよう、文字を
var y = (.height - size) \ 2; // 描画する座標(文字列の左上隅)を逆算する
.drawText(x, y, caption, 0x000000);
.drawText(x+.width, y, caption, 0x000000);
.drawText(x+.width+.width, y, caption, 0x000000);
}
}
@endscript
@macro name="buttoncaption"
@eval exp="drawButtonCaption(+mp.num, mp.caption, +mp.size)"
@endmacro
@locate x=0 y=-250
@button graphic="(選択肢の画像)" target=*(選択肢の指定先)
@buttoncaption num=1 caption="描画される文字列" size=20
@s

……というスクリプトでグラフィカルボタン内に文字を描画したんですが、
上記単独のksでは画像の中央部にちゃんと文字が描画されたのに、別のksファイルに移して使ったら、文字列が上に8ピクセル程度ズレて表示されてしまいました。
Config.tjsの余白を調べてみたり、移植先のfirst.ksの先頭に持っていって他のシナリオ記述の影響をうけないようにして調べたんですが、どこを調整したらよいのかさっぱりです。
どこをいじればよいのか、ご指南頂ければ幸いです。どうかお願いします。

266:名前は開発中のものです。
09/07/15 00:48:05 0fGEneGP
画面サイズを640×480で作成しているのですが、
ワイド画面のモニタでフルスクリーンにしたとき
4:3の比率が崩れないようにする(左右に黒い帯を表示)には
どうしたらいいのでしょうか。
「吉里吉里 フルスクリーン エンジン設定」でぐぐってみましたが
探し方が悪いのかみつかりませんでした。
よろしくお願いいたします。

267:名前は開発中のものです。
09/07/15 00:58:52 Y2Rvwx15
吉里吉里2.3系にすればおk

268:名前は開発中のものです。
09/07/15 03:15:52 mU1145O+
というかこういうのは環境依存だからディスプレイの設定いじればいいと思うんだが。
ソフト側でやることかね?
アスペクト比固定拡大が出来ない屑ディスプレイは切り捨てろ。

269:名前は開発中のものです。
09/07/15 06:24:26 CHa5RzDD
出来るに越した事はないと思う。より多くの人に、余計な知識を使わずに遊んでもらえたら幸せかと。
屑ディスプレイってのには同意だけどw

270:名前は開発中のものです。
09/07/15 06:51:00 mL8d1Xya
ゲーム自体そろそろワイド化しないといけないんだろうけど。
画面デザインが難しくなりそうだし、そもそも16:10か16:9とか…

271:名前は開発中のものです。
09/07/15 07:42:32 RU4VSfMs
>>270
いまから開発するのなら、16:91択じゃないの?
横は、1024か1280か分かれると思うが。1024だと、576だからな……

272:名前は開発中のものです。
09/07/15 08:48:35 sK6EITfT
うちはワイドで作ってないけど、ワイドにするなら基本画面はなんちゃって地デジ方式がいいと思うなぁ。
左右にマージン用の画像or黒を差し込むの。で、書き文字等の演出とかイベント絵では全体を使う。
4:3に対してはトリミングで対応。

273:名前は開発中のものです。
09/07/15 09:00:41 Y2Rvwx15
>>272
ワイド化の恩恵を一番うけるのは立ち絵表示なので、それだとあまりうれしくないと思う

274:名前は開発中のものです。
09/07/15 09:22:53 PYJjArzF
URLリンク(image.blog.livedoor.jp)
URLリンク(blog-imgs-18-origin.fc2.com)
URLリンク(www.ura-akiba.jp)
URLリンク(image.blog.livedoor.jp)
使い方次第だと思うよ^^

275:名前は開発中のものです。
09/07/15 13:21:21 ZGwTHdG7
やっぱ縦書きは読みにくいな

276:名前は開発中のものです。
09/07/15 19:53:33 11pCT3mo
>>171
ハイデフゲームの場合、縦は1200なんだが・・・。
1600*1200・1980*1200とか。
コンシューマ機に合わせるなら1280*720になるが。

277:名前は開発中のものです。
09/07/15 20:01:49 0mpeTwWO
ちょい質問。
シナリオフォルダ下のディレクトリ下のksを読ませたいんだけど、どうすればいいだろう。
scenario\Macro\macro1.ks
てな具合に。

278:名前は開発中のものです。
09/07/15 20:15:11 l7q2njyy
>>277
Initialize.tjs にて、設定が必要
xp3にした時どのように影響が出るか 調べてから、いじったほうが良い

279:名前は開発中のものです。
09/07/15 20:21:19 7aoiReAz
>>276
800×600の次のデファクトスタンダードが分からぬ……。
ワイドは種類が多すぎるな。
自分が使ってるのは君が挙げたのと違う1680×1050だし。

280:名前は開発中のものです。
09/07/15 20:51:07 vgHuQMIa
とりあえずおまえらが持ってる液晶の解像度を教えろ

281:名前は開発中のものです。
09/07/15 20:54:46 fgmjKOl6
1280*800

282:名前は開発中のものです。
09/07/15 21:13:41 sK6EITfT
「画面解像度 シェア 2009」で検索すると、いろんなサイトのビジター解像度統計が出てくるよ。

そこら辺を見る限り、800x600はほとんどの統計で確認されず。
1024x768がいまだ30~40%でシェアの中心。
720p未満のワイド(おそらくモバイルかネトブ)が1~2%。
上記以外はほぼ720pには対応できる解像度。一番多いのは1280x800。

で、1080iをフル表示できる人の割合は一割以下。

ということで、しばらくの間は1024x768が切捨てラインの瀬戸際。
そこを切捨てられるようになったら、しばらく720pが最大公約数になりそう。

283:名前は開発中のものです。
09/07/15 22:08:15 3/1JSARt
ワイドの例が村正かよ

284:名前は開発中のものです。
09/07/15 22:38:39 eict4Xn0
>>280
1280*1024-SXGA(5:4) 19型
windows7ではガシェットの位置が自由に出来るとか。
ワイドに買い替えなくてすみそう。

漏れは、フリーだし、今回のは変則サイズで好きなように作るよ。

285:名前は開発中のものです。
09/07/15 22:51:32 P46tvwRl
フルスクリーンにしない限りワイド比だと
他の事やりながらゲームするのに邪魔だと思う自分は時代に取り残されるのだろうか

286:名前は開発中のものです。
09/07/15 23:45:59 NhMmzjgH
大変申し訳ないです。
一通り調べてみたんですが見つからなかったので質問させてください。

メッセージウィンドウを常に表示させるようにしたいんですが、
背景をフェードアウトさせると、メッセージウィンドウも消えてしまいます。
次ページの文字表示のときに再表示させてるんですが、
やはり一瞬消えてしまうのが不自然に感じます。
(背景画像にメッセージウィンドウの枠をくり抜いているので)
メッセージレイヤーのみを残す方法がありましたら教えてください。


287:名前は開発中のものです。
09/07/16 00:11:24 w8J68Cck
>>286
リファレンス読めよボケと言いたい
フェードアウトのトランジション前に、backでメッセージレイヤを読み込んでやればいいだけの話だろ

288:名前は開発中のものです。
09/07/16 00:24:18 kv4qb0yH
[backlay]してないだけと見た

289:名前は開発中のものです。
09/07/16 02:58:20 Hh1rFobq
XGA 14incとWUXGA24.1incをもってる。

290:名前は開発中のものです。
09/07/16 08:06:22 kaidWA5b
このスレの過去ログ保管倉庫が見れなくなってる><

291:名前は開発中のものです。
09/07/16 08:07:29 46E/u6i9
ジオシティーズみれないだけだから

292:名前は開発中のものです。
09/07/16 12:59:22 e8wrmc/k
[l]タグが有効にならなくて困っています。
タグリファレンスをみたら、current タグでページを表にしろ的なことが書かれていたんですが、
表にしても有効になりませんでした。なにが原因でしょうか?

293:名前は開発中のものです。
09/07/16 13:25:54 kv4qb0yH
メニューの「文字表示」→「表示速度」→「ページ末まで一気に」じゃね?

294:名前は開発中のものです。
09/07/16 17:22:20 V3TQLAWi

自宅のPCも会社のPCもXPなので
VISTA使ってる方に質問です。

吉里吉里でのSWF再生で、特に不具合などはないでしょうか?
 

295:名前は開発中のものです。
09/07/16 18:15:40 e8wrmc/k
>>293
表示速度は高速でも標準でも無視されていました。
メニュー画面のようなものを作った後の部分からなるようなので、
何らかのタグか属性の影響を受けているというところまでは察知できたんですが、その辺をどういじったらよいかがわからんです。

296:名前は開発中のものです。
09/07/16 18:21:03 VFMV0WK6
メニュー画面のようなものをコピペすれば誰か分かるかもね

297:名前は開発中のものです。
09/07/16 19:16:17 e8wrmc/k
あ、「ページ末まで一気に」のチェックも外れています。メニュー画面(改)は以下のとおりです

*title_menu|
[startanchor]
[layopt layer="message0" page=fore visible=false]
[eval exp="tf.title_message = 'message1'"]
[history output=false enabled=false]
[disablestore store=true restore=false]
[rclick enabled=false]
[image storage="タイトルメニュー" layer=base page=fore]
[position layer="&tf.title_message" page=fore left=0 top=0 width="&kag.scWidth" height="&kag.scHeight" frame="" color=0x000000 opacity=0 marginl=0 margint=0 marginr=0 marginb=0 draggable=false visible=true]
[layopt layer="&tf.title_message" page=fore visible=true]
[current layer="&tf.title_message" page=fore]
テスト、[l]行末[l]クリック[l]」待ち[p][cm]

追伸、savedataフォルダを丸ごと切り取ってみたら[l]が有効になりましたが、
戻すとやっぱり[l]が無効になってしまいました。

298:名前は開発中のものです。
09/07/16 19:21:24 p1axxu7M
セーブデータに古いマクロが残ってたりするんじゃないの

299:名前は開発中のものです。
09/07/16 22:39:47 e8wrmc/k
>>298
どうやらそんな感じみたいです。

みなさんありがとうございました!

300:名前は開発中のものです。
09/07/16 22:54:25 +m5HbIo4
初心者で、DDKEでscenario作成しています
今まで快調で楽しく作成してました

が、百行目くらいから、
link targetやjump targetの後の[s]が働かなくなり、

ゲーム中で分岐一覧表示の続きに改ページが入っていて無表示ページに改ページしたり
うまくjumpできずに[だけ表示して止まってたりします

ここ1週間くらい試行錯誤しても直りません
原因はなんなのでしょうか?

301:名前は開発中のものです。
09/07/16 23:23:38 VFMV0WK6
百行目くらいが原因じゃね

302:名前は開発中のものです。
09/07/17 00:06:52 ErAWt2+g
状況だけ言われても分かるわけないだろ。探偵か俺らは。
やったことを順に書くとかしろ。
というかデータ退避させて別の場所にKKDE置いてとか試した?

303:名前は開発中のものです。
09/07/17 21:56:27 sr48d0ke
そろそろコミケも近いし、賑わい始めるかな?

304:名前は開発中のものです。
09/07/17 22:34:03 dbkenevv
今からにぎわうタイミングだと、ディスクのプレス間に合うのかw

305:名前は開発中のものです。
09/07/17 22:40:43 sr48d0ke
同人業界は手焼きがだな・・・

306:名前は開発中のものです。
09/07/17 22:42:18 fnpja5lJ
プレスよりか、音声収録のほうが間に合うかあやしい

307:名前は開発中のものです。
09/07/17 22:43:48 Vi489AgP
そこでパッチ配布ですよ
会場で買ってくれた人だけに限定パッチ!とか

308:名前は開発中のものです。
09/07/18 09:37:22 73bYQBKq
Config.tjsの

// ◆ メニューバーを表示するか
// 非表示にすると当然どのメニュー項目にもアクセスできなくなります。
;menu.visible = false;

を、ゲーム内でtrueにするタグってもしかして無いですか?
無い場合は、inscriptでやるしかない、もしくはそれすら不可能なんでしょうか?

309:名前は開発中のものです。
09/07/18 09:51:52 xI1/1WuP
適当な所で
[iscript]\
kag.menu.visible = true;
[endscript]\

310:名前は開発中のものです。
09/07/18 17:08:16 73bYQBKq
>>309
トンクス! 助かりました。

311:名前は開発中のものです。
09/07/19 14:09:45 iVSFme8T
相談です。
環境設定画面で、既読・未読スキップの切り替えをとりつけたのですが
切り替えはちゃんとできているものの、
既読スキップ→次のラベルで停止 未読スキップ→全スキップ
となって、既読のみのスキップにしたい場合、未読文章でスキップが停止してくれません。
この切り替え設定を取り除いても問答無用でスキップでした。

本題はスキップを未読文章で停止させたいのですが、
スキップ関連をいじりまわしたせいか、未読文章になっても停止しません。
デフォルトだと未読で停止した気がしますが、どこが原因だかわかる方はいますでしょうか。
ちなみに、systemフォルダのファイルは粗方マージして確認してみましたが
見落としがあるかもしれません。

どうかわかりましたらよろしくお願いします

312:名前は開発中のものです。
09/07/19 16:36:54 WsY/gOxh
>>311
まずどんな機能をつけたいのか、よく分からなかった。
・既読文章をスキップ(未読部分まで来たら停止)
・未読文章でもスキップ
これらの切り替え?前者はデフォで元々ある機能だし
後者は、止まるところが指示されない限り延々スキップするのでは。

> スキップ関連をいじりまわした
あとここを詳しく書かないと俺らお手上げ。
自分でも分からなくなってる場合は、
いっそ初期テンプレートから組み直したほうがいいかも。

313:名前は開発中のものです。
09/07/19 17:49:25 iVSFme8T
>>311です。
URLリンク(xxnone.blog121.fc2.com)
のKAGを改造して未読スキップを可能にというものです。
直接的には関係ないと思いますが、一応。

セーブデータフォルダを全部消して、未読であるはずの文章も
問答無用でスキップされてしまうので>>311の前者のデフォに戻したいのです。
おそらく後者に設定したとか初歩的な問題だと思うのですが
初期テンプレートとマージソフトで照合してみたのですがよくわかりませんでした。
いじったのがかなり前なのでよくわからなくなっています。
すみません。

314:名前は開発中のものです。
09/07/19 17:53:15 K5eMxlye
まあ組み直しがんばれ

315:名前は開発中のものです。
09/07/19 19:50:51 0rExQkVJ
自分のソースなんて一カ月すればイミフになる。
だからコメントとか付けるわけで、ドキュメンテーションをちゃんとしてればソース読み直して修正できたものを。

316:名前は開発中のものです。
09/07/19 20:05:44 WsY/gOxh
>>313
スキップモードの切り替えを何で行ってるのかわからんけど
そこのサンプルで言えば、sf.chSkipAllを制御できてないっぽいなぁ。
trueだと問答無用でスキップ。
sf.chSkipAllの値を「監視式」で監視してみ。

317:名前は開発中のものです。
09/07/19 20:13:38 YspZ3is8
そしてこれだけコメント付ければ余裕だろと思いつつ書いたソースを久しぶりに開くと
コメントを読んでも何が書いてあるか分からない罠

318:名前は開発中のものです。
09/07/19 20:27:17 NBLVtCvI
大学のときの教授も2週間経つと他人のソースになるっていってたなw

319:311
09/07/19 20:34:17 iVSFme8T
>>314-316
まずはレスありがとうございます。
仰る通りで返す言葉もなく恥ずかしいです…

ですが、自分の説明で誤解を招いているようなので、
>>313の記述を追加したのは今日のことで、監視式を見ても変数の切り替えは問題なく
お借りしたスクリプトでは一切問題は出ていないです。
URLを貼った事でややこしくしてしまいました、すみません。

あと>>311
>問答無用でスキップされてしまうので>>311の前者のデフォに戻したいのです。
は安価ミスで、>>312です。失礼しました。
久々の事で、どこをいじって未読文章でもスキップする設定にしたのかわからず仕舞いという現状です

320:311
09/07/19 20:36:43 iVSFme8T
連レスすみません
また安価ミスです…どんだけ自分にレスするのが好きなんだ…

×:あと>>311
○:あと>>313
>問答無用でスキップされてしまうので>>311の前者のデフォに戻したいのです。
は安価ミスで、>>312です。失礼しました。

321:名前は開発中のものです。
09/07/19 20:45:48 nPE54O8L
それ以外でskip関連いじくってるとか
systemフォルダいじってるなら合掌……

322:名前は開発中のものです。
09/07/19 20:58:14 Aat99oNb
初歩的な質問ですが、

シナリオ書くのに
どうしてMS Wordはだめなのでしょうか?

323:名前は開発中のものです。
09/07/19 20:59:59 YspZ3is8
>>322
ファイル名.docをファイル名.zipにして解凍してメモ帳かなんかのテキストエディタで見てみればその理由が分かる
分からないなら…

324:名前は開発中のものです。
09/07/19 21:01:46 Wr/tnp8o
>>323
なぜ圧縮解凍?普通にそのままテキストエディタで開けばいいじゃん。

325:名前は開発中のものです。
09/07/19 21:04:38 YspZ3is8
そのまま開いたら文字化けするじゃん?

326:名前は開発中のものです。
09/07/19 21:07:48 grw7rreH
zipにしても化けるっつーの
てか回答なんてできるわけねえだろ

327:名前は開発中のものです。
09/07/19 21:15:52 mohPl9wi
ワードなんか使わなくても
一行辺りの文字数指定できるテキストエディタとか使った方が効率がいい

328:名前は開発中のものです。
09/07/19 21:19:32 Aat99oNb
ゲーム作成して配布する時に問題なのでしょうか、
それとも自分で楽しむだけでも問題なのでしょうか

329:名前は開発中のものです。
09/07/19 21:34:59 YspZ3is8
もしかしてと思ったらdocx限定なんだな
これだから昔のは困る

330:311
09/07/19 21:40:57 iVSFme8T
解決しました。
デバッグのためどこでもセーブプラグインのマクロを切っていたのが原因でした…
すごく初歩的で恥ずかしいのですが、未読既読判定ってもしかして
行やページではなくラベル毎にやっているのでしょうか。
ともかく、相談に乗ってくださった方々ありがとうございました。

>>328
ストーリーや通常の文章は使い慣れたwordで
KAGやTJSは他のエディタを使うというのでは違うのでしょうか?
吉里吉里のスクリプトに特化したエディタの方が何かと便利ですよ

331:名前は開発中のものです。
09/07/19 21:52:39 Aat99oNb
ありがとうございます
勉強になりました

332:名前は開発中のものです。
09/07/21 12:19:59 L56n5vV1
質問です。
既読文字の色を変えたいのですが、どのようなやりかたができますか?
選択済選択肢の色換えのマクロ
(『ハイパーリンクで飛んだラベルの名前を変数として記憶、真なら色換えというマクロ』と
『エンドリンクとリセットフォントを一緒にしたマクロ』のセット)
を公式BBSのログで見つけて利用していて、
それを応用できないかと思ったんですが、思いつけませんでした。

333:名前は開発中のものです。
09/07/21 17:30:04 A+IJ1VrJ
>>332
kag.getCurrentRead()
既読だと真。

334:名前は開発中のものです。
09/07/21 19:46:50 L56n5vV1
>>333
ありがとうございます!
初心者なので、そういうのがパッと出てこないというか、どうやって調べたらいいのか分からずお手数をおかけしました。

後学のためお聞きしたいんですが kag.getCurrentRead() 
とかはどうやって調べたら出てくるのでしょう。
(一応ここでお聞きする前に、リファレンス(KAG/TJS)のキーワード一覧で「既読」と調べてみたんですが、
kag.getCurrentRead()というのは見つけられなかったんです)

以下教えていただいたおかげの成果
[macro name=fc]
[cm]
[if exp="kag.getCurrentRead() == true"]
[font color=0x808080]
[endif]
[endmacro]
というマクロを組んでラベル後につけるようにしたら
デフォが白文字、既読灰文字になり思うような処理ができました。

・回想リプレイを組み込む予定なので、回想モードから来た場合はリセットフォントするようにしてみました。
・どこでもセーブプラグインを利用中で、[p][label](セーブできるラベルを挟むタグ)[cm]をセットにしたマクロを
[p]代わりに使用していたのでそれに上の処理を組み込み、また回想モードから来た場合はリセットフォントするようにしてみました。

今のところ思い通りに出来ていますが、もし何か「こうした方がいい」とアドバイスありましたら宜しくお願いします。

335:名前は開発中のものです。
09/07/21 20:19:24 A+IJ1VrJ
>>334
systemフォルダの中を眺め回す

336:名前は開発中のものです。
09/07/21 22:43:26 gnuFqksz
初歩的なことかもしれませんが、アドバイスをください。

f.hensuu1、f.hensuu2、f.hensuu3……f.hensuu35という規則的な名前の変数が35個あります。
このf.hensuu1~f.hensuu35までのうち、1つでも1が入っていたらメッセージを表示させたいのですが、いい表記方法が思い王かびません。

[if exp="f.hensuu1==1||f.hensuu2==1||(中略)f.hensuu34==1||f.hensuu35==1"]
メッセージを表示します[p]
[endif]

こう書くしか思いつかず、でもすんごく長いしわかりづらい……と悩んでいます。
もっとすっきり書く方法はないでしょうか?

337:名前は開発中のものです。
09/07/21 23:00:43 BA5J8bIj
素直に配列じゃまずい理由でもあるの?

338:名前は開発中のものです。
09/07/21 23:06:45 hBT5d5Rg
夏休みはじまったし、コミケまで時間ねえしって時期なんかね

>>336
・0か1しか入らないことが確実なら、全部足して1以上かどうか
・f.hensuuを配列にして、f.hensuu.find(1)が0以上か
・iscript内でfor文を書いて、f['hensuu'+(i+1)]にひとつでも1があるか調べた結果を別の変数にいれる

339:名前は開発中のものです。
09/07/21 23:26:09 gnuFqksz
>>337,338
配列……

すいません、いままでKAGだけでノベルゲーしか作ったことがないのでこういう方法しか思いつきませんでした。
TJSの勉強もかねて、配列のやり方を調べてみます。
ヒントありがとうございます!

340:名前は開発中のものです。
09/07/21 23:34:44 BA5J8bIj
>>339 もう見てるかわからないが、
管理方法を今更変えたりソースいじるのが面倒だという場合は

[if exp="function(f) { for (var i = 1, last = 35; i <= last; ++i) if (f['hensuu'+i] == 1) return true; return false; }(f)"]
メッセージを表示します[p]
[endif]

これでもできる。

341:名前は開発中のものです。
09/07/21 23:38:39 L56n5vV1
>>335
332=334です
なるほど! 見たかったものがたくさんありました。
いろいろありがとうございました!

342:名前は開発中のものです。
09/07/21 23:59:10 hBT5d5Rg
>>341
とはいえ、読み返したとき何を意味してるかわかんないと思うなら、
最初のやつの方が冗長と感じるかもしれないけど、まだましかと

343:名前は開発中のものです。
09/07/22 01:23:26 sue03CUZ
ネイティブプラグインで定義されたネイティブクラスのメンバ関数から
TJS_BEGIN_NATIVE_METHOD_DECL(foo)
{
*result = objthis;
}
TJS_END_NATIVE_METHOD_DECL(foo)
として自分自身のインスタンス

344:名前は開発中のものです。
09/07/22 01:32:44 sue03CUZ
すみません、途中で描き込んでしまいました。

ネイティブプラグインで定義されたネイティブクラスのメンバ関数から
TJS_BEGIN_NATIVE_METHOD_DECL(foo) {
*result = objthis;
} TJS_END_NATIVE_METHOD_DECL(foo)
として自分自身のインスタンスを返すと、
返値のオブジェクトのコンテキストが0x00000000になってしまいます。
ほか、ネイティブ関数内で生成したネイティブインスタンスを返したときも同じでした。

にも関わらず、返値のオブジェクトからメンバを参照したりすると
コンテキストがthisコンテキストの場合と変わらない動作をします。

これって吉里吉里バグでしょうか?
それとも自分のコードのバグでしょうか。

345:名前は開発中のものです。
09/07/22 01:51:55 FPEQ9D97
メンバー取得だと objthis は参照されることは無いからエラーにならない。
メンバ呼び出しも、インスタンス生成時にすでにインスタンスの objthis がコンテキストに渡されてるからたぶんOK。
ためしにプロパティを定義してから参照してみなされ。エラーになるはず。

ちなみに

*result = tTJSVariant(objthis,objthis);

が正しい iTJS2Dispatch2 の返し方

346:名前は開発中のものです。
09/07/22 02:10:45 FPEQ9D97
ちょっと訂正

s/正しい iTJS2Dispatch2/正しいインスタンス/

347:名前は開発中のものです。
09/07/23 17:39:14 RkfFAvb8
ちょっとKAGEX使って見たいと思いダウンロードしてみたんですが、同梱の「update_auto_copy_vars.bat」って何でしょうか?

348:名前は開発中のものです。
09/07/23 17:41:50 qPvAUkFV
nscから吉里吉里に乗り換えようと思ってるんだけど、どの本買えばいい?

349:名前は開発中のものです。
09/07/23 17:46:05 SLUFk1t6
公式ドキュメントを印刷して簡易製本したやつ

350:名前は開発中のものです。
09/07/23 17:52:48 jZe3ubbp
そういえば吉里吉里の入門書で、全ページ公開されている本があったな。

351:名前は開発中のものです。
09/07/24 00:12:29 iuweiYGY
limited previewでも見れるやつあったと思うんだが。

352:名前は開発中のものです。
09/07/24 04:55:27 LTiSyBcP
>>349
「原理原則」や「机上の空論」を正論と思って賞賛してよいのは中学二年生まで

353:名前は開発中のものです。
09/07/24 05:17:48 SsPsVXk/
いや、普通に>>349は悪くないアドバイスだそ

354:名前は開発中のものです。
09/07/24 05:23:16 nNAgO2LK
勉強したけりゃ>>349でFA

355:名前は開発中のものです。
09/07/24 09:09:18 kZhmh/4X
>>352
典型的な高二病だな

356:名前は開発中のものです。
09/07/24 09:23:36 oSSeGPhh
左に何もオブジェクトを指定しない間接メンバ選択([]演算子)ってどういう動作するの?
System.inform(["a"]);みたいにするとなんかオブジェクトが返ってくるけど

357:名前は開発中のものです。
09/07/24 09:52:54 u0wItfeo
それ演算子じゃなくて式中配列じゃね

358:名前は開発中のものです。
09/07/24 10:01:18 oSSeGPhh
ああなるほどそいういうことか

359:名前は開発中のものです。
09/07/24 15:14:23 qfGoZbC/
KAGのIF文の条件式に = じゃなくて == を使わなきゃいけないって、何かすごく
違和感ない?
いつも忘れて、そのミスを見つけるのに苦労するんだけど...
しかもエラーを吐いてくれればまだいいけど、出ない。ただ無視されるのみ...

360:名前は開発中のものです。
09/07/24 15:22:36 7vfOa4F4
>>359
どういう違和感?
=と==は明確に意味が違うよ

361:名前は開発中のものです。
09/07/24 15:25:56 5Upnwmrm
エラーを吐く言語もあるけど、そのためには厳密な型宣言が必要なんだよな。
今あるコードが全部使いものにならなくなるぐらいの仕様変更しないと無理かも。

362:名前は開発中のものです。
09/07/24 15:46:46 /REV+Ewt
コーディングやったことがない人にとっての違和感ってことでしょ

他の部分は直感的なのになんで == なんて日常生活で使わない
記号つかってんの? っていうどんな言語でも初心者がぶつかるやつ

363:名前は開発中のものです。
09/07/24 15:49:20 TmkeB4fe
BASIC などの古い言語しか知らない人も同じ違和感を受けると思う。
自分が BASIC→C の時そうだった。
IF文ってのは条件分岐を行うためのもので、その中で計算を行うなんて
発想がないんだよね。

364:名前は開発中のものです。
09/07/24 15:51:07 7vfOa4F4
なるほどー
納得した

365:名前は開発中のものです。
09/07/24 16:06:35 YMnHsuF2
>>359
BASICあがりの人かい?

原理的には = を場所によって意味を変えるのはできなくはないんだが、
それをやってると、コンパイラの構造が複雑になって性能がおちてしまうので、
別にわりあててる言語のが多い。

そうだねぇ、KAG が純粋に独立したスクリプト言語なら = でも OKだったのかもだけど、
処理として TJS を読んで判定かけてるのでそうはいかなかったんだろうね。まあ慣れろってことで。

ちなみに C 系だと = が代入で、== が比較だけど、
Pascal系だと = は比較で := は代入だったりするからややこしいw


366:名前は開発中のものです。
09/07/24 17:12:25 8on6TjX3
:=で代入きぼちわるいね
そうだ。不等号が入るとき、どっちに書くかいつも迷うんだけど良い覚え方はないものか。

367:名前は開発中のものです。
09/07/24 17:26:20 /REV+Ewt
>=
フ トウゴウ

<=
フ トウゴウ

って覚えれば

368:名前は開発中のものです。
09/07/24 17:26:31 t4mNIJEj
>>359
あーそれw
以前、ksを1行ずつ読んで、簡易的なチェックで警告一覧を出力する.vbsを作ったことあるわ。

↓自分の場合は、こんな感じのチェックでも十分だったわ。
1.ifの含まれている行があったらスペースタブの整理後if(で配列へ分割。
2.各要素で右から最初の')'より後ろは削除。
3.'===','==', '!=', '+='等を除き、''='が残っていたらワーニィング。

※1.ifだけで?はみていない。
※2.条件がif()の括弧内に入っていないと使えない。
※3.条件が複数行に跨るものも拾えない。
※4.関係ないものも拾う。ex.if(a=1){(b=1)}
※5..ksだと@ifとか@elsifとかいったやからもある。上のままだと全部拾う。ex.@if exp="a"

369:名前は開発中のものです。
09/07/24 17:29:44 /REV+Ewt
コーディング未経験のスクリプターと共同作業やるならいいかもな

370:359
09/07/24 18:40:47 qfGoZbC/
>>363 >>365
図星かも。10年以上前にプログラミングをかじる程度したことはあったんですが、
社会人になって止めちゃいました。そして何を思ったか、今になってゲームを
作りたいと思っちゃったんです。
Excelは今も良く使うので、 = 表記に完全に馴染んじゃってるんですよね。

>>368
おー、同じ悩みを抱えていた人がいたんですね。俺一人じゃないんだ...
何かホッとした。

皆さん、下らんボヤキに付き合ってくれて、ありがとう。

371:名前は開発中のものです。
09/07/24 18:55:23 XRRN4HTj
>>368
cond属性とかもあるけど、おおまかなチェックはできそうすね

>>366
「大なりイコール」とかの順で書けばいい

372:名前は開発中のものです。
09/07/24 21:03:05 jpbjLN0h
以前、比較のつもりで=>書いて例外(HardwareException)出して、
それが誤りであることに気が付くまでにとても悩んだなあ…orz

=> は、式中辞書配列内(外部でも使えそうだけど)で許容されている
演算子であることを思い出してからは、迷うこともなくなりましたとさ

373:名前は開発中のものです。
09/07/24 22:08:42 5CQIBufA
初歩的な質問で申し訳ありませんが
皆さんのサイトはゲームの動作環境をどう表記してますか?
吉里吉里公式の動作環境をまるっとコピペしようとしたら
コピペしないで確認しろとありました

一応自分のPCのスペックを表記しておいたほうがいいでしょうかいらんでしょうか?

374:名前は開発中のものです。
09/07/24 22:10:49 XZ+J/nbu
・公式のをコピペして吉里吉里の動作環境にする
・自分のPC(4台あるし)のスペックを確認済みとして書く

の2つでやってる

375:名前は開発中のものです。
09/07/24 22:13:18 8on6TjX3
>>372
そういやそうだ。そうじゃん、普段使いまくってるじゃん。
ありがとう。

376:名前は開発中のものです。
09/07/25 01:12:57 K2SYYOYb
=>はアロー演算子と見間違えてイミフな時がある。
=表記はHSPさわったとき発狂しかけた。

377:373
09/07/25 01:30:02 3DpvMHeU
>>374
回答ありがとうございます。
自分のPCスペックも表示しようと思います。
ヘボすぎて恥ずかしいが参考までにあったほうがいいかもしれませんね

378:名前は開発中のものです。
09/07/25 01:35:05 K2SYYOYb
ふつうはプロファイルとって実行時のメモリ量調べたり、いろんな構成のPCでひたすらテストして決定するんだけどね。
プロファイラがないからなTJSは。
というか吉里吉里にデバッガとかツール用のAPIないよね。

379:名前は開発中のものです。
09/07/25 01:40:25 vAwbl5XN
ビデオカード依存しないシステムだから、画面切り替えのトランジションとかをえんえんはしらせてみて
どのくらいの感触で動くか調べるくらいで必要十分だよ。


380:名前は開発中のものです。
09/07/25 05:27:57 KmBjh/g8
=> は別にどこででも使える演算子で、カンマと同じ意味がある
%["a", 1 => "b" => 2 => "c", 3] とかいう書き方もできたはず

軽くRuby使ってるんだが、さほど頻繁に使わないってこともあって <=> と <-> でいつも迷う
エラー吐いてくれるタイプなんでまだましなんかもしれないけど

381:名前は開発中のものです。
09/07/25 11:30:41 nKG6Q315
<->とか要らんよな
わざわざ演算子にするほどのものじゃない

382:名前は開発中のものです。
09/07/25 12:28:39 e3P19x4Y
>>381
今んとこ2回評価だから微妙だよな

383:名前は開発中のものです。
09/07/25 15:58:27 NihvXwLZ
D言語みたいに、return a=b; はよくても if (a=b){ } はエラーになる言語もあるな

384:名前は開発中のものです。
09/07/26 01:16:41 v04aTSKb
>"a", 1 => "b" => 2 => "c", 3
どこかのクロージャにしか見えない

385:名前は開発中のものです。
09/07/27 16:18:19 gb/6Ls5s
メッセージレイヤ横にセーブorロード画面へ切り替えるボタンをつけたのですが、
戻ってきたあとにメッセージレイヤ(message0)に書いたシナリオが進まなくなってしまいます。

具体的には、
・行末orページ末のクリック待ち記号が消え、
スキップボタンを押しても発動できず、先に進めない
・ボタンは押せる、メッセージ履歴も見れる。
という状態です。

ボタンからは「kag.process("save.ks")」のように各ページへ飛んでいます。

セーブ画面に入る時のソースはこんな感じです。
本編に戻る時はこれとそれぞれ対応したタグを使っています。

@tempsave place=0
;栞に保存
@exsysbtopt forevisible=false backvisible=false
;ボタンを非表示
@rclick call=true storage="save.ks" target="*close" enabled=true
;右クリックで戻る。(他に戻るボタンをクリッカブルマップで実装してあるが、同様の症状になる。)
@locksnapshot
;スナップショットをロック
@history output=false enabled=false
;メッセージ履歴の出力・表示を無効


基本的に↓のサイトを参照しましました。
URLリンク(www.geocities.co.jp)

解決方法がわかればぜひ教えてください。
まだまだ未熟ですので、記述不足で他に必要なソースがあればもちろん載せます。
よろしくお願いします。

386:名前は開発中のものです。
09/07/28 00:39:15 m2IylvK1
>>385
conductorを止めっぱなしにしてるだけでは?

387:名前は開発中のものです。
09/07/28 11:09:36 QiROzYvz
kag.process("save.ks");
と、
@rclick call=true storage="save.ks" target="*close" enabled=true
の、使い方がまずいな

本編のシナリオから、ジャンプで、save処理に飛んできて
コールで、saveのclose処理に進んでいる
のが誤り

本来なら、コールで、save処理に進んで
save処理内で、ジャンプでセーブ処理内のcloseに飛んで
close処理でreturnしないといけない
そうしないと
最初に本編の所でsaveをコールした個所に、処理の流れが戻らない


388:名前は開発中のものです。
09/07/28 11:52:49 ijBRqVPC
すんません、ググってもわからなかったので

KagマニュアルにSWF再生の時に、ファイル名の後に?name=value~で
変数を渡すことが出来ると書いてあるのですが
FLASH側では、どのように受け取ればいいのでしょうか?

もしくはどこかに解説してるサイトがあれば教えてください。
 

389:名前は開発中のものです。
09/07/28 14:13:30 PPOjGwA2
吉里吉里でFlashは扱ったことないけど、
HTMLからそういう風に渡せば、Flash側で何もしなくてもその名前の変数に値が入るよ

390:名前は開発中のものです。
09/07/29 00:20:46 WYn7jMgk
吉里吉里2docか掲示板かdeeたん日記に書いてあったきがす

391:名前は開発中のものです。
09/07/29 00:27:43 7c7DIkfV
385です。
言う通りkag.proccesをコールに変え、@rclick callをjumpに変えたところ、正常に動作しました。
初歩的なミスでほんとにすいませんorz

お二方ほんとにありがとうございます。

392:名前は開発中のものです。
09/07/29 12:08:01 WWTIopk1
TJSゴリゴリとかではなく、ほぼKAGの範囲内で作られたゲームで、
ゲーム製作初心者の参考になるようなゲームを紹介して頂けませんか?
プログラム・ソースが公開されていたりしたら最高です。
ゲームを楽しむことで学べたら効率的なのではないかと思いまして。

393:名前は開発中のものです。
09/07/29 14:30:34 B4ng0Zvn
アドベンチャーゲームならいくらでもあるだろ
それ以外のジャンルは,あったとしても「間違った使い方」なので参考にするべきじゃない

394:名前は開発中のものです。
09/07/29 14:36:28 lSC8ZyKL
なんか9月にDee氏も交えた吉里吉里の講習会兼オフ会みたいなのやるらしいね

395:名前は開発中のものです。
09/07/30 19:22:29 wmLBtUZX
test

396:名前は開発中のものです。
09/07/30 21:48:15 he23UFo9
おさかな定職、ちょっと変化してる…
これは期待していいのかな…
サポートとか贅沢言わないからせめて倉庫としてでも復活して欲しい

397:名前は開発中のものです。
09/07/30 22:24:08 hh3V9W8K
TJSのスクリプトエンジン自体のテストスクリプトって公開されてないの?

398:名前は開発中のものです。
09/07/31 03:09:51 LkFvtV7a
公式掲示板他ぐぐったのですが、どうしてもわからずこちらに参りました。

サウンドギャラリーを製作中なのですが
サウンドギャラリーの画面のみ右クリックで音楽停止させたいと考えています。

rclickのタグにexp="kag.bgm.stop()"を入れてみたのですが
BGMがストップされません。
BGM停止のターゲットをつくり、rclickのジャンプ先にして
stopbgmで止めるしかないのでしょうか。

399:名前は開発中のものです。
09/07/31 03:13:04 bpa+dbpH
右クリックサブルーチンのksを作りメインのksから呼び出して使ってるんですが
ちゃんと動作はするもののreturnしてくるとBGMが最初から再生されてしまいます

*rclick_exit
@tempload place=0
@rclick call=true target="*rclick_menu" storage="r_click.ks" enabled=true
@delay speed=user cond="kag.chUserMode"
[return]

メモリ上の栞にBGMの再生状態も記録していなければならないのかと思って
マニュアルなどを読んでみたのですが分かりませんでした
初歩的すぎる問題かもしれませんがどうかご教授ください

400:名前は開発中のものです。
09/07/31 03:26:53 bpa+dbpH
すいません
@tempload place=0 bgm=falseで自己解決しました・・・

401:名前は開発中のものです。
09/07/31 10:47:24 rOMBbekB
>>398
rclickタグってexp属性あったかな。拡張したならともかく
言うとおり、サブルーチンを作ってそこにstopbgmを置けばよいのでは

402:名前は開発中のものです。
09/07/31 14:02:11 xHa0woew
>>398
rightClickHook使うとか
ただしそのままだとサウンドギャラリーを抜けても有効なので、removeするか
フラグが立っている(ギャラリー中)なら有効なようにする

403:名前は開発中のものです。
09/07/31 23:29:54 VlyFlnzf
完全な初心者です
自己解決したんですがトランシジョンは難しいですね
背景画像を使わずにメッセージレイヤに文字だけ表示している状態から
その文字を溶暗で消す方法がわからなくて悩みました
結局真っ黒な背景画像を用意してクロスフェードさせました
メッセージレイヤをどうやって操作すればいいのだろうと悩んでいました
チュートリアルを作られている方にこのとほほなつまずきをお知らせしたいです

404:名前は開発中のものです。
09/07/31 23:50:59 DEiOJAlU
>背景画像を使わずにメッセージレイヤに文字だけ表示している状態から
>その文字を溶暗で消す方法がわからなくて悩みました
@backlay
@layopt layer="0" page=back visible=false
@trans method="crossfade" time="1000"
@wt
これでok

405:403
09/08/01 00:04:18 uNi03v+g
404さん、ありがとうございます
チュートリアルは背景画像を使う普通の場合を想定しているのでつまずいていました

406:名前は開発中のものです。
09/08/01 00:28:43 GXDqmh6d
>>405
チュートリアルは、コピペして使うものじゃなくて、基本の仕組みを理解するためにあるものだから
チュートリアルだけじゃなくて、タグリファリンスにもちゃんと目を通した方がいいよ
あとはテンプレ見て講座サイトと併用するなり何なり
いきなり一から十まではできないだろうが、みんなつまづいて思考錯誤しながら覚えていくんだよ

407:名前は開発中のものです。
09/08/01 00:37:45 KB27uNbz
[image storage="&kag.fore.layers[0].Anim_loadParams.storage" layer=1 pos=center]
これ、型がちがうみたいなことを言われるのはなぜ?

408:名前は開発中のものです。
09/08/01 00:50:13 GXDqmh6d
>>407
voidになってるのかな
kag.fore.layers[0].Anim_loadParams.storage
これ監視式に入れてみたらいいんじゃね

409:名前は開発中のものです。
09/08/01 01:10:02 IN4NoQ+t
>>401 402
レスありがとうございます。
サブルーチンの方が簡単に組めそうなので
サブルーチンでやってみる事にします。
ありがとうございました!

410:名前は開発中のものです。
09/08/01 01:26:53 QpRSM0pZ
>>407
[image storage="&kag.fore.layers[0].Anim_loadParams.storage" layer=1 pos=center
cond="kag.fore.layers[0].Anim_loadParams !== void && kag.fore.layers[0].Anim_loadParams.storage !== void"]
または
[eval exp="kag.fore.layers[1].assignImages(kag.fore.layers[0]"]

411:名前は開発中のものです。
09/08/01 02:00:28 ORmBfdl/
tjsの質問です。
var i="j";
var j= 0;
この場合に変数iを利用して変数jの値を変えられないでしょうか。
(i!)= 値、でできるかと思ったのですがこれは不正な代入か不正な式の操作だそうなので。

412:名前は開発中のものです。
09/08/01 02:41:35 NlDhYl95
>>411
その式だと 0 = 値 ってことになるから当然エラー

目的を満たすには

global[j] = 値

でおk

413:名前は開発中のものです。
09/08/01 10:24:11 KB27uNbz
407です。
408、410、レスサンクスです!!
condでvoidかどうかチェックするのか……。
assignImagesの使い方もわかりました。すてきー。


414:411
09/08/01 12:58:26 p7Ny6mdi
>>412
[]演算子を使えば良いのですね、回答いただきありがとうございます。
私の考えたものは言われると確かにエラーで当然ですね、何故これでできると思ったんだろう。

415:名前は開発中のものです。
09/08/01 13:27:12 hsxXyy+h
そういうのはちゃんと理解して使わないと嵌まるよ

416:名前は開発中のものです。
09/08/01 22:03:21 v2mQIBat
first.ksから次のシナリオのksに飛ばして
再びfirst.ksに戻って次のksに飛ばす方法したいんだけど
戻る時jumpで*~指定するのとcallでreturnして戻るのと指定するのどっちが効率的?

他にそういう方法があるなら教えてほしいです。

417:名前は開発中のものです。
09/08/01 23:07:33 fEDZV3Iq
>>416
そんな些細なことで効率性を求めてたらなかなか進まない
好きな方法をつかう

個人的にはマクロ読み込みみたいに必ず呼び出し元に返ってくる、ちょっと別のファイルを
読み込むような意図ならサブルーチン。同じファイルに戻るかもしれないけど条件次第では
戻らないかもしれない、シナリオ分岐など(ニュアンス的に)処理が別ファイルに移るようなときなら
jump使ってるかな

418:名前は開発中のものです。
09/08/01 23:09:37 h4M1zPGr
何の効率?

419:名前は開発中のものです。
09/08/02 10:44:29 C+Gw8PJZ
たぶん、脳みそ使わないで済む効率。
ケースバイケースなんだけど、通常のシナリオ部分なら
@jumpの方が扱いが楽だよ。必要なら、戻り先は、フラグに収納しとく。

>他にそういう方法があるなら教えてほしいです。
tjs含め、普通に「KAG System リファレンス」で言及されているのであらかただと思う。
ということで、リファ嫁。

個人的見解だけど。そこら辺は自分で試行錯誤して決めれば良いレベルと思ふ

420:名前は開発中のものです。
09/08/02 10:54:19 Wp08KWhd
個人的な好みでは、jump使うのは3~4回くらいかな
あとは全部callしてる
first.ks->macro.ks->title.ks->main.ks
とか
構造化プログラミングとかに慣れてるとこっちの方が違和感が少ない

421:名前は開発中のものです。
09/08/02 11:32:42 fQoBB6mb
プログラマー上がりなら、違和感は少ないかもしれないけど、
栞やコンダクター周りとの相性の問題あるし、リンクが普通に使うと@jump同等だし、
@jump主体にしたほうが、素直でお得と思う。

422:名前は開発中のものです。
09/08/02 12:34:40 Wp08KWhd
callで相性問題出るのか!?
今のところ、問題起きてないけど・・・。

jump主体はGotoのスパゲッティコードを連想してどうにも。

423:名前は開発中のものです。
09/08/02 12:41:51 KHOYRoEP
結論:個人の好きで使え

424:名前は開発中のものです。
09/08/02 13:05:59 3h/vRcOB
KAG SYSTEMの構造を理解してればcall主体で組むなんてことは普通しない
まあ何を作ってるのかにもよるけど、関数プログラミングがしたいなら、
TJSで自前のサブシステム作ってKAGに組み込んで・・・ってのが筋だと思うし、
後々トラブルが少なくてすむんじゃないだろうか

425:名前は開発中のものです。
09/08/02 14:27:47 Wp08KWhd
>>424
tjsは機能拡張の為に多少弄る程度で、本体の方の構造はぜんぜん把握してないんだ
使ってるのはADVで

*start_main
[call storage="macro.ks"]
; シナリオ部
[call storage="prologue.ks"]
[call storage="scenario01.ks"]
[call storage="scenario02.ks"]
; タイトルへ
[jump storage="title.ks"]

みたいな使い方。
シーンごとの分岐とかが楽にできるから、こういう形にしたんだけど・・・
問題でそうだろうか?

426:名前は開発中のものです。
09/08/02 16:00:05 P5IDIPeC
callは使いすぎるとreturnの誤爆が出てきてしっちゃかめっちゃかになる恐れがある
というか実際なって困ったので必要がない限りjump

427:名前は開発中のものです。
09/08/02 17:38:21 eEt2K5t6
マクロ内でcall使うのって駄目?
とりあえず動くからいいのかと思ってたんだけど

428:421
09/08/02 18:36:48 HaievO31
えっと、自分が420に対して「相性の問題」と言ったのがあらぬ疑念を
呼んでなくもないようなので、補足します。
「相性の問題」と言ったのは、土を掘るならシャベル、
耕すなら鍬のほうが相性が良いといった用なことです。(例えがあれですが)
取り合えず、「構造化プログラミング」ってなにそれ、食べれるのって方は
「KAG System リファレンス」-「サブルーチンを使おう」等をしっかり読んで、
あとは、使って覚えればいいと思いますm(_ _)m

429:名前は開発中のものです。
09/08/02 20:15:19 XqTlUFYH
メインフローを作ってcallでシナリオを呼んだ方が管理しやすくない?

430:名前は開発中のものです。
09/08/02 20:21:19 BJC3kT9Q
call は呼び出しもとで行がずれたときにエラーで復帰できなくなる罠があったり


431:名前は開発中のものです。
09/08/02 20:39:24 Wp08KWhd
呼び出し元で行がずれるってどういう場合に起こる?

432:名前は開発中のものです。
09/08/02 20:47:44 KeHZ566g
バッチ当てるときとか?

433:名前は開発中のものです。
09/08/03 10:32:56 V7PNVWXx
>>431
つまり最初からちゃんとしたモノを作れば問題は起きないってことです(´ー`)

434:名前は開発中のものです。
09/08/03 21:06:43 KTOZHeSA
吉里吉里のレイヤーって横幅が1280pxとかになってもさほど問題ないのかな
昔のDirectXだと、幅が大きすぎるサーフェスを作ろうとすると問題が起きたり
してた気がするんだけど

もちろんどんな大きさのレイヤーでも作りすぎればおかしくなるのは大前提として

435:名前は開発中のものです。
09/08/04 01:40:44 OALni9DT
そういや今の3Dエロゲはテクスチャが一枚1024*1024とかふざけたサイズらしいな。

436:名前は開発中のものです。
09/08/04 21:36:25 gCd6e1Bq
吉里吉里は内部的には別にDirectX なわけじゃないので特に問題にはならないよ。
表示が DirectX の時は適当に切り分けて処理してくれるようになってたと思う。

437:名前は開発中のものです。
09/08/05 01:44:17 J8WmaMAt
業務連絡~

deeたんとこのサーバがクラッシュして現在 kikyou.info アクセス不能とのこと。
復旧時期は不明

438:名前は開発中のものです。
09/08/05 01:56:18 IdRZHtde
それがW.Dee氏からの最後の連絡だった・・・。

ところでおさかな定食はどうなったんだ?

439:名前は開発中のものです。
09/08/05 08:21:46 wetiCV7F
SVNとか全滅ってことか?

440:名前は開発中のものです。
09/08/05 09:54:10 J8WmaMAt
復旧してる

441:名前は開発中のものです。
09/08/05 22:30:13 vUt/Hk1T
誰からんか氏のどこでもセーブ持ってませんか?
工事中でDLできなくなっているので……

442:名前は開発中のものです。
09/08/05 22:48:41 YtFZquA8
二次配布おkだったっけ

443:名前は開発中のものです。
09/08/06 00:08:36 lHlM1VqA
流れ豚切ってすみません。
質問なのですが、
動的なカットインを取り入れたいのですが、
レイヤーそのものを動かすのではなく例えば四角いレイヤー画像内で
簡単な動きやスクロールなどをさせたいのですが
そういったことはKAGEXでやった方がいいのでしょうか・・・
pimageのみを動かせないかとリファレンスを見たところ、
そういった機能はなさそうです

何かいいアイディアはないでしょうか

444:名前は開発中のものです。
09/08/06 00:39:06 PW1IyXjf
>>443
アニメーションファイルを使うとか。
座標ガリガリ書きまくるのがめんどくさいけど。

445:名前は開発中のものです。
09/08/06 03:18:22 7IoCjv+k
俺はレイヤにスプライトの機能実装したけど重かった。

446:名前は開発中のものです。
09/08/06 05:35:52 PZu2WCfx
俺はスプライト処理はDirectXに任せたけど結局memcpyで転送になるのでやはり重かった。

447:名前は開発中のものです。
09/08/06 17:23:51 rqIQuvBC
よくプラグインのファイルとか、.ksで作ってるけど、
@iscriptで始まって、@endscriptで終わるだけなら、
.tjsで作ってもいいような気がするんですけど、
.ksの方がよくて.tjsで作ると不都合なことがあるんですか?

448:名前は開発中のものです。
09/08/06 17:28:00 K9vVkzj4
別にない。単に KAG の処理系では読めないので、手動で execStorage する必要があるだけ


449:名前は開発中のものです。
09/08/06 17:33:24 V0RouXx7
ksだとTJSの後KAGで何か書いておきたい時に書ける

450:名前は開発中のものです。
09/08/06 18:09:33 PW1IyXjf
関連のマクロとかまとめとけるな


451:名前は開発中のものです。
09/08/06 23:40:00 UZGii+8I
俺はスクリプタにそこら辺一切触らせたくなかったのでプラグインの実装、そのプラグインを使うタグの実装を全部tjsで書けるようにしてある。
シナリオ側からは
@mount name=pluginnameでプラグイン同士の依存関係から全て勝手に解決して使えるようになる。
まあ、実装の隠ぺいってやつだね。
プラグインの実体はpluginname.xp3とそれが依存するxp3にあるからスクリプタが実装の詳細を知ることはできない。

新タグの仕様はドキュメントに書いてある。
つまりプラグイン書くのはマの仕事。スクリプタの仕事ではないという事にしてある。

452:443
09/08/06 23:48:52 lHlM1VqA
>>443-446
ありがとうございます
スプライトで調べてみたものの????でしたので
アニメーションファイルかどうしても実装しかったらKAGEXを検討します
できそうで簡単にできない機能でもどかしいですね

453:名前は開発中のものです。
09/08/06 23:50:32 ETeqkH0q
俺もスクリプタには演出のみお願いしてる。
KAGのタグだとstorageで素材を指定するとか面倒くさいので、ファイル名ベースのタグである程度システムが全自動で処理してくれるようにしてある。
スクリプタがbufの番号とかlayerの番号とか気にせず演出に専念できるように。
最近はライターさんでも扱えるぐらい簡単にしたから、スクリプタ不要になった。
このままだと俺も用済みになるかもなw

454:名前は開発中のものです。
09/08/07 00:06:22 zu3InFxL
>453
いや、俺の場合ライタがスクリプタ兼任なんで「お前はプラグイン書く暇があったらシナリオ上げろ!」というためにだなw

455:名前は開発中のものです。
09/08/07 14:29:08 LBL2K49z
>>454
> ライタがスクリプタ兼任

ですよねー
俺なんか正直シナリオ書くよりスクリプトいじってるほうが楽しいという
本末転倒状態になってるw

456:名前は開発中のものです。
09/08/07 16:18:16 8xiRGJf0
一年以上前にスレで
マップチップからRPG用のマップ作ったり
キャラやモブが移動する2Dマップ処理のスクリプトをうpした人がいたけど、
だれか持っている人うpしてくれませんか

「おお、ベアトリーチェ」
みたいな台詞を町人がしゃべってたから
うみねこ1~2話が出た頃だったかな…?

457:名前は開発中のものです。
09/08/07 16:28:50 JnppTWi1
>>456
URLリンク(uproda11.2ch-library.com)
PASS:krkr

458:名前は開発中のものです。
09/08/07 16:59:26 8xiRGJf0
>>457
季節すら思い出せなかったので
流石に無理かと思ってましたがエスパーが居てくれて幸運でした。

本当にありがとうございます!

459:名前は開発中のものです。
09/08/08 12:34:31 oOpy5+ek
ベアトリーチェ=うみねこて・・・うん、いや、いい

460:名前は開発中のものです。
09/08/08 13:32:49 lY8WpKcm
しかたないさ

461:名前は開発中のものです。
09/08/08 16:57:43 GjsPccWg
質問させてください
選択肢のランダム表示をマクロにしようと思っています
以下のようにマクロを作ってみたのですが、ふたつ問題が出ました
まず、選択肢の本文が長い場合、タグがひたすら横にのびることです
もうひとつは、選択のタイミングによって選択肢の総数が変わることです
(選択肢が4つの質問と3つの質問があったり、選択肢が増えたりします)
解決方法が思いつかないので、何かヒントをいただけたらと思います
宜しくお願いします。



*select
[macro name="select"]

@eval exp="f.data = [[ mp.text1 ,'first.ks', mp.select1], [ mp.text2, 'first.ks', mp.select2], [ mp.text3,'first.ks', mp.select3], [ mp.text4,'first.ks', mp.select4]]"
@eval exp="f.tmp = intrandom(0,3), f.data[0] <-> f.data[f.tmp]"
@eval exp="f.tmp = intrandom(0,3), f.data[1] <-> f.data[f.tmp]"
@eval exp="f.tmp = intrandom(0,3), f.data[2] <-> f.data[f.tmp]"
@eval exp="f.tmp = intrandom(0,3), f.data[3] <-> f.data[f.tmp]"

1.[link target="&f.data[0][2]" storage="&f.data[0][1]"][emb exp="f.data[0][0]"][endlink][r]
2.[link target="&f.data[1][2]" storage="&f.data[1][1]"][emb exp="f.data[1][0]"][endlink][r]
3.[link target="&f.data[2][2]" storage="&f.data[2][1]"][emb exp="f.data[2][0]"][endlink][r]
4.[link target="&f.data[3][2]" storage="&f.data[3][1]"][emb exp="f.data[3][0]"][endlink][r]
[endmacro]

[select text1="本文1" text2="本文2" text3="本文13" text4="本文14" select1=select1 select2=select2 select3=select3 select4=select4][s]


462:名前は開発中のものです。
09/08/08 17:12:06 g/+i2DJo
こんな感じで、どうよ?

;選択肢の直前で変数に必要なパラメータを代入
[eval exp="f.選択肢の数 = 4"]
[eval exp="f.s1 = '*select1'"][eval exp="f.t1 = '本文1'"]
[eval exp="f.s2 = '*select2'"][eval exp="f.t2 = '本文2'"]
[eval exp="f.s3 = '*select3'"][eval exp="f.t3 = '本文3'"]
[eval exp="f.s4 = '*select4'"][eval exp="f.t4 = '本文4'"]
;2択の時の専用マクロ
[if exp="f.選択肢の数 <= 2"][select2 text1="&f.t1" text2="&f.t2" select1="&f.s1" select2="&f.s2" ][endif]
;3択の時の専用マクロ
[if exp="f.選択肢の数 == 3"][select3 text1="&f.t1" text2="&f.t2" text3="&f.t2" select1="&f.s1" select2="&f.s2" select3="&f.s3" ][endif]
;4択の時の専用マクロ
[if exp="f.選択肢の数 >= 4"][select4 text1="&f.t1" text2="&f.t2" text3="&f.t2" text4="&f.t4" select1="&f.s1" select2="&f.s2" select3="&f.s3" select4="&f.s4"][endif]
[s]


[select2]と[select3]と[select4]をまとめて
[select]内で、f.選択肢の数 を調べて、処理を分岐のほうがスマート

463:名前は開発中のものです。
09/08/08 17:35:42 g/+i2DJo
2~4択に対応版作ってみた


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;↓今回の選択肢の数
[if exp="f.好感度フラグ < 5"][eval exp="f.選択肢の数 = 3"][endif]
[if exp="f.好感度フラグ >= 5"][eval exp="f.選択肢の数 = 4"][endif]
;↓選択肢の直前で変数に必要なパラメータを代入
[eval exp="f.s1 = '*select1'"][eval exp="f.t1 = '本文1の文章をここに記述する'"]
[eval exp="f.s2 = '*select2'"][eval exp="f.t2 = '本文2の文章をここに記述する'"]
[eval exp="f.s3 = '*select3'"][eval exp="f.t3 = '本文3の文章をここに記述する'"]
[eval exp="f.s4 = '*select4'"][eval exp="f.t4 = '本文4の文章をここに記述する'"]
;↓のマクロで選択肢配置
[select]
[s]


464:名前は開発中のものです。
09/08/08 17:37:33 g/+i2DJo

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;選択肢マクロ
[macro name="select"]
;今回使用するデータを集計
@eval exp="f.data = [[ f.t1 ,'first.ks', f.s1], [ f.t2, 'first.ks', f.s2], [ f.t3,'first.ks', f.s3], [ f.t4,'first.ks', f.s4]]"
;ランダム入れ替え
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
;↑今回の選択範囲の内容を入れ替え
;↓以下適当な回数シャッフルを繰り返し
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
;選択肢を表示する
1.[link target="&f.data[0][2]" storage="&f.data[0][1]"][emb exp="f.data[0][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 2"]2.[link target="&f.data[1][2]" storage="&f.data[1][1]"][emb exp="f.data[1][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 3"]3.[link target="&f.data[2][2]" storage="&f.data[2][1]"][emb exp="f.data[2][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 4"]4.[link target="&f.data[3][2]" storage="&f.data[3][1]"][emb exp="f.data[3][0]"][endlink][r] [endif]
[endmacro]


465:名前は開発中のものです。
09/08/08 17:38:43 irbfFcCJ
式中関数のコンテキストって何になるの?
いろいろ試してみたけど,それを含むクラスのインスタンスになるっぽい?

466:名前は開発中のものです。
09/08/08 17:44:51 GjsPccWg
>>462-464
めちゃくちゃ早い回答ありがとう!
何かできそうな気がしてきた
じっくり考えてみるよ、本当にありがとう


467:名前は開発中のものです。
09/08/08 19:51:17 urpQMU76
>>465
globalになるんじゃないっけ

468:名前は開発中のものです。
09/08/08 20:27:58 x44gCfOd
ちょっと相談に乗ってほしい
セーブデータをマイドキュメント以下に保存させるようにしたんだけど、起動すると、なんかexe直下にもsavedataフォルダが作られて、krenvprf.kepってのが作られて困ってる。
デバッグ情報を記録してるってことはリファレンスに載ってたからわかったんだけど、デバッグはOFFにしている(・・・ハズ)なんだ。
Releaserでxp3とかにするときに取り除かれる、って聞いたんだけど、相変わらず生成されちゃう。
どうすればいいか、誰か知らないだろうか?

469:名前は開発中のものです。
09/08/08 21:17:24 elWYaLJk
>>468
吉里吉里付属の「krkrconf.exe」で設定できるよ

470:名前は開発中のものです。
09/08/08 21:19:24 V40faU5w
>>468
セーブデータをマイドキュメント以下、ってのをどうやって実現した?
吉里吉里設定を使って datapath を適切に設定して、
プログラムからは System.dataPath を参照させるのが正しい手順

除外ってのは、アーカイブ時に除外されるってだけだ。


471:名前は開発中のものです。
09/08/08 21:29:23 x44gCfOd
>>469
確認したけど、デバッグモードはOFFになってるんだ

>>470
Config.tjsの所で、
;saveDataLocation = System.personalPath +"savedata";
ってしただけなんだけども。

他のtjsファイル見たけどsaveとかが無くて―って、dataPathで検索すればいいのかな?

472:名前は開発中のものです。
09/08/08 21:31:51 V40faU5w
>>471
使ってる吉里吉里のバージョンは?
このあたりの仕様は Vista 用に、2.3 で変更になってる ( dataPath機能の追加)

古い版では、krenvprf.kep や 例外時のログが実行ファイルのあるところの
savedata 以下にできてしまうのは仕様で回避できない。

473:名前は開発中のものです。
09/08/08 21:34:39 x44gCfOd
>>472
バージョン調べたら、2.30.2.416だった。
大丈夫なのかな・・。公式見てこよう。

474:名前は開発中のものです。
09/08/08 23:09:41 V40faU5w
じゃあそれは吉里吉里本体は問題ない。

KAGも新しい 3.3 とかなら

var saveDataLocation = System.dataPath; // セーブデータ保存場所

となってるはずだ。これはいじる必要はない。
krkrconf.exe で実行ファイルを指定して、システム全般/データ保存場所 を適切に指定した
cf ファイルをつくれば、それに従って動作することになる



475:名前は開発中のものです。
09/08/08 23:21:59 C6ikQx71
[iscript]内で、シナリオファイル上での普通の文章みたいな操作はできないのでしょうか。
例えば、普通のシナリオで、

新しい朝がきた―希望の朝だ―

と記述すると、この文章がずらずらっと表示されますよね。
これと同じ動作を、[iscript]~[endscript]の中で出来ないかということです。


drawTextで実現できるのかなと試行してみたのですが、ずらずらっと表示されるのでなく、一気に表示されてしまいました。
また、ここで描画した文字分、テキストの描画位置が進んで欲しいのですが、それもありませんでした。

// テキストとテキスト描画色を引数とするマクロを作り、そのマクロからこのsubroutineに飛ばす
*sub
[iscript]
{
var a = mp.text; // テキスト取得
kag.fore.messages[kag.currentNum].font.height = 28; // フォントサイズを合わせる
for ( var i=0; i<mp.text.length; ++i )
{
kag.fore.messages[kag.currentNum].drawText( kag.fore.messages[kag.currentNum].x, kag.fore.messages[kag.currentNum].y,
a.substring(i,1), mp.color);
kag.fore.messages[kag.currentNum].x += 28;
}
}
[endscript]
[return]



よろしくお願いします。

476:名前は開発中のものです。
09/08/08 23:32:54 x44gCfOd
>>466
いっついぐざくとりー
>var saveDataLocation = System.dataPath; // セーブデータ保存場所

>var saveDataLocation = "savedata"; // セーブデータ保存場所
ってなっていた・・・。
これか!!!
本ッッッッ当にありがとうございます!

477:名前は開発中のものです。
09/08/08 23:34:13 x44gCfOd
うわあああああアンカまちえたああ・・・・・
2chブラウザがっががが

改めて
>>474本当にありがとう!

478:名前は開発中のものです。
09/08/08 23:44:49 x44gCfOd
直ったと思ったら直っていなかった・・・・

でもやっぱり>>474
>システム全般/データ保存場所 を適切に指定したcf ファイルをつくれば
で解決した・・・
リアルでドジっこ属性なんて持っててもウザいだけだろjk・・・

479:名前は開発中のものです。
09/08/09 00:07:23 FngJ034Z
>>465
レキシカルクロージャではないからglobalになるはずだが変更があったのなら分からん。

480:名前は開発中のものです。
09/08/09 00:14:33 UVEGN1Jh
>>475
どうするのが最善なのか俺にもわからんが、スキップとか履歴とかメッセージ速度とか
できるだけ既存の仕組みを使いたいならembタグが一番楽だと思う


481:名前は開発中のものです。
09/08/09 01:15:39 jNIe4i86
>>475
var dic = %[];
var str = "表示したい文字列";

for(var i = 0; i < str.length; i++)
{
  dic.text = str[i];
  kag.tagHandlers["ch"](dic);
}

試してないけど、こんな感じで出来るかも。
クリック待ちとかConductorの制御が必要なものは
素直にKagでやったほうがいい。

482:名前は開発中のものです。
09/08/09 17:52:51 wSPP8w81
トランジションを使うときに、layerの番号を指定して、
chilrdenをfalseにすると1つのlayerでトランジションが起きますけど、
これに複数のlayerの番号を指定して、同時にトランジションを起こすことはできませんかね。

例えば、複数のキャラの立ち絵を同時に登場させたいときなどに使いたいんですけど。

483:名前は開発中のものです。
09/08/09 18:21:40 KZiEUzEo
KAGに於いては、childrenをfalseにせずにトランジションするのが正道にして近道。
日付表示みたいな小窓を出しててそれを変えたくないってんなら、
それもオモテウラ用意するのが多分正解。

484:名前は開発中のものです。
09/08/09 18:42:31 wSPP8w81
>>483
そうか、裏ページにコピーして変わらないところは変化しないのか。
トン

ついでに、エンティティ使ってイメージタグのストレージ属性を変数で指定した場合、変数の値を途中でevalかなにかでで変えた場合は勝手に画像の中身も入れ替わるの?
それとも、新しくイメージタグを指定するまで残るものなの?

485:名前は開発中のものです。
09/08/09 20:04:33 3+cLengQ
>>484
エンティティはタグの解析時に参照される(値をTJSとして実行して、その結果に置き換わる)
あとで変数の中身を変更したところで影響ないし、それによって再読み込みなどはされない

486:名前は開発中のものです。
09/08/09 20:52:23 cGs7Rp5+
>>482
単にコマンド列挙するだけで同時に走るよ。
もっとも、子レイヤでのトランジションは、トランジションのまちがややこしくなるのと、
レイヤサイズ違いの吸収がめんどくさいのでおすすめはしない。

×変わらないところは変化しない
○同一内容になってるから切り替わっても区別がつかない

487:名前は開発中のものです。
09/08/09 21:12:13 PuJDDIqH
余談だが、単純にフェードイン・フェードアウトだけなら、moveタグでやる方法もある。
この間にトランジションを行うと巻き込まれるが、好きなレイヤをそれぞれの時間で表示・非表示できるのは結構便利。

488:名前は開発中のものです。
09/08/10 02:18:21 mZ36Q/5Y
キャラごとにボイスのオンオフを作りたいのですが、
何かサンプルはないでしょうか?

489:名前は開発中のものです。
09/08/10 08:52:33 N33HnzZP
>>488
サンプルも何も、キャラごとにボイスONの変数を用意して、
それでボイス鳴らすマクロを[if]なりcondなりしてやればいいだけだと思うが

490:名前は開発中のものです。
09/08/10 15:15:14 mZ36Q/5Y
>>489
確かにそうですね、なんとかできました。
ありがとうございます。

491:名前は開発中のものです。
09/08/11 01:56:09 U/SKRjwd
>>485
>>486
ありがとう、なんとかなりますた

ついでにもう一つ。
携帯からですまん。

[eval exp="f.layer_c1 = 2"]
[eval exp="f.pos_l = -200"]
[eval exp="f.layer = 'f.layer_c' + mp.lay"]
[eval exp="f.left = 'f.pos_' + mp.pos"]
[image storage="xxxx.png" layer="&f.layer" left="&f.left" ]

で、lay=2、pos=lで指定すると、
f.layerもf.leftも文字列の変数として認識されて、
無理矢理整数型にしようとすると0になってしまいます。
"f.layer_c1"といった文字列を,f.layer_c1という関数(中身は数値)
に変える手だてはないでしょうか?


492:名前は開発中のものです。
09/08/11 03:14:42 ieF9pzLM
多分これかな?
[eval exp="f.layer = 'f.layer_c' + mp.lay"]
[eval exp="f.left = 'f.pos_' + mp.pos"]
↓変更
[eval exp="f.layer = f['layer_c' + mp.lay]"]
[eval exp="f.left = f['pos_' + mp.pos]"]

ただぱっと見の状況ではf.layer_c2が無いから
lay=2だとvoidになると思うけど

493:名前は開発中のものです。
09/08/11 15:46:52 OVZtbqV/
質問させていただきます。

―(接続符号ダッシュ)を二つ繋げて使うと、文字と文字の間に微妙な隙間が出来てしまいます。

(例)―
    ↑ここあたりに微妙な隙間が出来る。

字間調整なので色々と試してみたのですが、ぴったりと密着せずにうまくいきません。
こういう場合はどうすればいいのでしょうか?
ご教授お願いします。

494:名前は開発中のものです。
09/08/11 16:09:00 72wadl5V
アンチエイリアスがかかってるからじゃないかな。
drawTextで書くか、アンチエイリアス外したレンダリング済みフォントを指定するとか?

495:名前は開発中のものです。
09/08/11 16:36:44 j4UQjU4o
>>493
デフォで文字間を空けてるなら
[style pitch=0]―[style pitch=default]
ダメならpitch=0を-1とか-2にしてみる

フォントに影つけてるなら[ch text="―"]とかも試してみるといいかも

496:名前は開発中のものです。
09/08/11 17:45:50 DikYrcFL
VideoOverlayクラスを継承して独自のクラスを作ったのですが、
ムービーを左右反転させて再生する方法は何かありませんか?

497:名前は開発中のものです。
09/08/11 18:17:54 OVZtbqV/
>>494>>495

ありがとうございます。
おかげ上手くいきました。

498:名前は開発中のものです。
09/08/11 19:33:50 QXG/hnfO
>>496
C++? TJS?

499:名前は開発中のものです。
09/08/11 20:02:53 DikYrcFL
>>498
ああごめんTJS
好きな位置でムービー再生できる関数作ってたんだけど
反転再生出来ないかなと思ってリファレンス見たけど無かった

500:名前は開発中のものです。
09/08/11 20:21:02 j4UQjU4o
>>499
TJSのみで実現するならmode=vomLayerでレイヤ描画にして
onFrameUpdateのタイミングでlayer1なりlayer2なりに対して
flipLR/flipUDするしかないんじゃないかな

501:名前は開発中のものです。
09/08/11 20:31:37 DikYrcFL
すんなりお手軽には行かなさそうですね
ありがとうございます

502:名前は開発中のものです。
09/08/11 20:41:35 DikYrcFL
ちょっと前にここでうpされてた
layerExBTOA.dllを使ってるんだけど
onFrameUpdate内で左半分と右半分を合成表示してるから
flipUDはいけたけど、flipLRはそのままだと無理だった

503:名前は開発中のものです。
09/08/11 20:58:43 /qWwaawF
質問です。マクロに引数を持たせるのはどうしたらいいでしょうか?
下のソースで失敗したのですが、やりたい事はわかりやすいと思います
[macro name="pos_set"]
[eval exp="tf.func = %function"]
[image storage="name_masato" page="fore" left="10*tf.func" top="5*tf.func" layer="3" visible="true"]
[endmacro]

どうやれば実装できるでしょうか?

504:名前は開発中のものです。
09/08/11 21:02:19 j4UQjU4o
情報の後出しは感心しないが
copyRightBlueToLeftAlphaの後にimageWidthを
半分にしてfilpLRするのではダメなん?
まあ既に解決してるならいいんだが

505:名前は開発中のものです。
09/08/11 21:22:23 B/yENLBD
>>503
[macro name="pos_set"]
[eval exp="tf.func = mp.function"]
[image storage="name_masato" page="fore" left="10*tf.func" top="5*tf.func" layer="3" visible="true"]
[endmacro]


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch