トップページgamedev
1002コメント407KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。 転載ダメ2015/06/05(金) 01:50:10.83ID:r78FM0BY
ノベルゲーム製作ツール吉里吉里/KAGのユーザーが雑談・質問をするスレです。
自作ゲームの進行状況や製作ツールについての話、TJS等の話題もどうぞ。
マルチポストはやめましょう。個人叩きも禁止です。

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

吉里吉里スレ過去ログ倉庫
ttp://bbs.bokunatu.com/krkr/
吉里吉里2/KAG3雑談質問スレ_過去ログ
ttp://www.geocities.jp/kirikiri_log/

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

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

前スレ
■吉里吉里/KAG/TJS雑談質問スレ■その28
http://peace.2ch.net/test/read.cgi/gamedev/1391503520/
0241名前は開発中のものです。2015/07/22(水) 12:32:16.02ID:YoJ5Llt6
>>240
マニュアルも解説サイトも利用者も作品数も圧倒的だから……。
エンジン選定はそれが一番重要だと思います。
0242名前は開発中のものです。2015/07/22(水) 12:42:06.88ID:CsmEAKc5
ありがとうございます!\(^O^)/

解説書も有るし、吉里吉里2で勉強します!
0243名前は開発中のものです。2015/07/22(水) 13:31:30.73ID:P6PPl1rl
c++とか触った事すら無いところから始めた俺からすると
ごった煮さんとこのZの解説を読んでチンプンカンプンレベルならまず2で覚えないと先に進まんだろ
それ以前に俺レベル程度じゃZはあまり恩恵に預かれない
安定してる2の方がマシ スクリプトソースをUTF-8にいちいち変換するのも面倒だし
0244名前は開発中のものです。2015/07/22(水) 14:13:33.60ID:GnkwzWXt
Zはデバッガがなぁ…
0245名前は開発中のものです。2015/07/22(水) 15:26:11.82ID:nCTgBvOf
吉里吉里2はデバッガが充実していた・・・?

っていうかコンソールって言いたいのか
0246名前は開発中のものです。2015/07/22(水) 17:14:04.04ID:GnkwzWXt
3つとも愛用してたから無いと不便に感じてしまう
0247名前は開発中のものです。2015/07/22(水) 22:32:14.63ID:GXfdVbnU
ZはVSでビルドするためにあるようなものなので
吉里吉里の本体を改造しないなら無理に使わなくていい
0248名前は開発中のものです。2015/07/23(木) 14:16:36.51ID:YPfZ6Cm+
教えてください

var FileParser = new csvParser();
tf.FileList = FileParser.parseStorage("list.csv");
invalidate FileParser;

//list.csv
1月,睦月,January
2月,如月,February
3月,弥生,March
4月,卯月,April

上みたいにしてlist.csvを取得した場合って、どう言う風に配列で収納されてるのかな
tf.FileList.list[0][1]→睦月なのかなと思ったんだけど、違うみたい
根本的に理解が足りてないのかな
0249名前は開発中のものです。2015/07/23(木) 20:21:57.30ID:GhxAsd18
まだリリース前なんだが、ファイル破損チェックツールでdata.xp3やkrikr.exe をチェックすると「破損」になるんだが何が悪いんだろう……
署名はちゃんとしているんだが
02502472015/07/23(木) 20:28:33.43ID:GhxAsd18
すいません、自己解決しました。
0251名前は開発中のものです。2015/07/23(木) 20:58:07.74ID:BWoZRk6g
>>248
parseStorageはdoLineを呼び出すだけで返り値はないよ
initStorageでファイル読み込んでgetNextLineで一行ずつ取得してくのが簡単
↓で思ってるとおりに動く

function loadCSVFileAsArray(filename) {
var result = [];
var parser = new CSVParser();
parser.initStorage(filename);
while (true) {
var line = parser.getNextLine();
if (line === void) break;
result.add(line);
}
return result;
}

tf.FileList = loadCSVFileAsArray("list.csv");
0252名前は開発中のものです。2015/07/23(木) 22:10:17.84ID:GhxAsd18
スレ違いになるけど、CD-ROMで頒布予定なんだけど、
最近はWindows7ばっかりだから、CD-ROMをドライブに入れても
自動インストールが始まらないんだっけ?
0253名前は開発中のものです。2015/07/24(金) 06:56:28.93ID:J9odBgUp
OSの設定によるんじゃねーの
0254名前は開発中のものです。2015/07/24(金) 14:34:30.43ID:7zo244sJ
>>251
ありがとうございます。完璧にやりたい通りに動きました。
あとwhileもそんな風に使う方がスマートですね。勉強になりました。
0255名前は開発中のものです。2015/07/26(日) 23:11:47.31ID:nyc9dYW6
前にKAGParserの拡張機能の意見募集した者です。
ごった煮の中の人と協力して、少し前にExtKAGParserがリリースされたので
ご報告まで。
貰った意見で具体的なものは大体実装したはず。
ttp://www.geocities.jp/keep_creating/krkrplugins/ExtKAGParser/ExtKAGParser.txt
要望くれた人、テストしてくれた人、みんなありがとう。
これで少しでも楽にゲームが作れるようになるといいな。
0256名前は開発中のものです。2015/07/27(月) 12:45:16.10ID:ud96V+38
前から思ってたけど、マクロはcallで呼び出してるんじゃないの?
シーン再生のエンド処理させて、そのマクロの中でシーンからエクストラに戻ったりすると、callを積みっぱなしにならないのかね
0257名前は開発中のものです。2015/07/27(月) 18:46:03.63ID:6ZSZc8b0
マクロとcallは呼び方が違う。マクロはその場に展開される。
callスタックにつみっぱなしになるかどうかは呼び方次第なので具体例ないとなんとも。
0258名前は開発中のものです。2015/07/27(月) 22:03:26.28ID:HhBVKLnt
そうなのか。ずっと一緒だとおもってた。
そう言えば、callのスタックをクリアするメソッド無かったっけ?
一応それでタイトル戻るたびにクリアするのが理想かね
0259名前は開発中のものです。2015/07/29(水) 16:16:50.27ID:CEzxqKe+
override.tjsで、プロパティをclassに追加するのってどうすればいいですか?

こんな感じで書いてるのを、
property sys2volume {
getter() { return kag.getSEGroupProperty("globalVolume", 100000) / 1000; }
setter(v) { kag.setSEGroupProperty("globalVolume", v * 1000); }
}
ゲッターやセッターの中でkag.〜となっているのがかっこわるいから、


kag.KAGWindow.sys2volume {
getter() { return getSEGroupProperty("globalVolume", 100000) / 1000; }
setter(v) { setSEGroupProperty("globalVolume", v * 1000); }
}
としてもうまく行きませんでした
それと、もっとこうしたらもっとスマートな書き方になるって言うのは無いですか?
0260名前は開発中のものです。2015/07/29(水) 17:48:55.92ID:Zyt8BghU
&演算子を使えば
property sys2volume {
getter() { return getSEGroupProperty("globalVolume", 100000) / 1000; }
setter(v) { setSEGroupProperty("globalVolume", v * 1000); }
}
KAGWindow.sys2volume = &global.sys2volume;
みたいにできる。global空間汚すのが気に入らないなら、上記の後で
delete global.sys2volume;
としておけば一応global側は消える
0261名前は開発中のものです。2015/07/29(水) 17:55:58.37ID:M131uUCV
kag.autoModeで未読既読判定して既読の時は読み進め、未読に来たら停止させたいんだけど俺レベルじゃ全くどうすればいいか思いつかん・・・・・・
0262名前は開発中のものです。2015/07/29(水) 18:03:57.12ID:Zyt8BghU
あと最近の吉里吉里(svnの開発版rev4942以降/安定板2.32r2では無理)の場合、
Scripts.eval/exec系にコンテキストが指定できるようになったので
property sys2volume {〜}だけを記述したsys2volume.tjsみたいなファイルを作っておいて
Scripts.execStorage("sys2volume.tjs", /*mode*/, /*context*/KAGWindow);
とする手もある
0263名前は開発中のものです。2015/07/29(水) 19:20:15.62ID:Fwe6MqBx
プロパティの状態自体は栞に保存されないからあまりポコポコプロパティ作るとはまるぞ
0264名前は開発中のものです。2015/07/30(木) 00:25:07.09ID:fejD4xI5
>>262>>264
うまく動きました
&を思いつけない自分が本当にどうしようもなくヘボいスクリプターだ。。。
0265名前は開発中のものです。2015/07/30(木) 01:09:46.27ID:VwRDb0FZ
それはもうスクリプターのレベルじゃないからなあ
0266名前は開発中のものです。2015/07/30(木) 01:12:14.86ID:xJeXEgtj
TJSをゴリゴリ書く人間をスクリプターと呼ぶかどうかは
昔からよくブレるところであってな

KAGで演出がんばってまーす みたいな感じだと
&を使えって話になることすらないだろうけど
0267名前は開発中のものです。2015/07/30(木) 03:30:54.86ID:eMG92eIt
プロパティーの話題が出てる今便乗させてください
EXのBGVってプロパティーはあるみたいけどどう組み込んだらいいのかな?
voiceに似せて組み込もうにも同じくへぼへぼスクリプターな俺はvoiceでgrepした段階で力尽きたorz
理想はタグにしたいんだけどそれ以前にどうやって使うかすらわからない
0268名前は開発中のものです。2015/07/30(木) 07:54:34.21ID:nZwrlHm3
>>267
[キャラ名 bvoice="ファイル名"]で再生
[キャラ名 bvoice=""]で停止
0269名前は開発中のものです。2015/07/30(木) 16:43:31.71ID:qnCnVInh
おー ありがとうございます
こんな簡単な事だったのかorz

ちなみに調べてた時にバッファを二つ持ってるみたいだったけど、もう一つのバッファはhvoiceみたいだね
ただこれ単に切り替えてるだけっぽいけど意味あるのかな?
fadeinoutなどの調整も出来ないみたいだし、少し研究してみます
0270名前は開発中のものです。2015/07/30(木) 22:17:23.15ID:nZwrlHm3
bvoiceとhvoiceはkag.bgvvolumeとkag.bgv2volumeに音量の系統分かれてるだけ
日常シーンとHシーンで個別に音量設定つけるなら使うかもしれない
0271名前は開発中のものです。2015/07/31(金) 00:30:20.18ID:+sD9QLZU
吉里吉里のフラグで配列(もしくは辞書配列)を宣言してるかどうかってどうやって調べればいいんだろうか?
これじゃダメだった。
配列を宣言してなければ配列を作るって言う初期設定をさせたかったんだけど

[if exp="&sf.xxxx[0] === 'undefind'"]

〜処理〜

[endif]
0272名前は開発中のものです。2015/07/31(金) 03:29:40.64ID:2pluXChD
既にsf.xxxx = [] されてて[0]番目が未定義かどうかを調べたいのか、
それとも配列自体が定義されてるか調べたいのかよくわらんけど
どっちにせよundefined比較はtypeofを使うのが必須だね
前者の場合
[if exp="typeof sf.xxxx[0] == 'undefined'"]
後者の場合
[if exp="typeof sf.xxxx == 'undefined'"]
ifのexpはそのまま実行時に評価されるので&指定は不要。比較は上では==になってるが===でも全く問題ない

ただ、undefined比較だと例えば(後者の場合で)sf.xxxx=0みたいに意図しない値がすでに入っていた場合に
スルーされてしまうので、本当に厳密にやるなら
function IsObjectInstanceOf(ref, cls, base=sf) {
return (typeof base[ref] == "Object") && (base[ref] !== null) && (base[ref] instanceof cls);
}
みたいなオブジェクトのインスタンスのクラスまで調べる適当なヘルパ関数作っといて
[if exp="!IsObjectInstanceOf('xxxx', 'Array')"]
[if exp="!IsObjectInstanceOf('xxxx', 'Dictionary')"](※辞書の場合)
とかしておくと安心かもしれない

まぁぶっちゃけsfやfの初期値はvoid(typeof取った場合のみundefined)なので
他に変更されるような要因がなければ上みたいに長々と書かなくても
[if exp="sf.xxxx === void"]
で済ませる場合も多いね(記述少なくて楽だし)
0273名前は開発中のものです。2015/07/31(金) 09:24:59.71ID:KBwevcQw
krmovie.dll でムービーを再生すると、比較的低スペックの環境だと
どうしても再生が乱れるんだけど、なんか良い方法ないかなあ。

メディアプレーヤーとかでなら問題なく再生できるPCなんだけどな。
0274名前は開発中のものです。2015/07/31(金) 12:01:21.70ID:UyI8xMWU
あきらめろ
0275名前は開発中のものです。2015/07/31(金) 13:01:25.64ID:j2ZgS7ql
>>272
説明が少し悪くてごめん。

配列になっていないものを[if exp="typeof sf.xxxx == 'undefined'"] で確認するのはわかるんだけど

単にゲームの初期設定でsf.xxx = []とすれば良いだろうと言う突っ込みはおいておいて
要するにsf.xxxxが(辞書)配列かどうかと言う判定はどうしたらいいんだろうか?って事を聞きたいんだ。

[if exp=(sf.xxxxが配列じゃなかったら)]
;配列を作る
[eval exp="sf.xxxx = []"]
[endif]

と言う処理を行いたいの。

[if exp="typeof sf.xxxx[0] == 'undefined'"] とか[if exp="sf.xxxx.count == 0"]で調べようとすると
エラー表示されるから困ってる。
0276名前は開発中のものです。2015/07/31(金) 13:04:13.52ID:KBwevcQw
>>274
他にDLLってないのかな。自分で作るしかないんだろうか。
0277名前は開発中のものです。2015/07/31(金) 13:06:59.23ID:j2ZgS7ql
>>273
最近はエロゲは最低スペックでvistaマシンだから
今後ロースペックマシンではどんどんきつくなっていく。
だがvistaの頃に開発ストップした吉里吉里ぇ

それとオープニングとかなら別だけど
ゲーム中のムービーは画面書き換えの関係で同時に複数のチャンネルで動かしてる場合が多いから
それだけでかなり重いうえにさらにいろいろなゲームとしての処理でロースペックだともっさりする
0278名前は開発中のものです。2015/07/31(金) 13:39:02.38ID:3PBc8qKX
吉里吉里だかKAGEXだったかで、ゲーム中で使われていない素材ファイル一覧を吐き出すプラグインってなかったっけ?
0279名前は開発中のものです。2015/07/31(金) 13:55:31.47ID:2SOVPUaC
>>275
instanceof "Array"
0280名前は開発中のものです。2015/07/31(金) 14:02:40.71ID:9MELTnnV
>>275
説明が悪くて じゃなくて、>>272は十分説明を理解しているのに
>>275>>272の解説を何も理解せずにオウム返ししているだけなんだよなあ・・・



「カレーを作りたいんだけど、肉と野菜煮込んでも茶色くならない。どうすればいいのかな?」
「カレールーを入れてね。本格的にやりたいならスパイスから作るやり方もあるよ」
「説明が悪くてごめん。肉と野菜を煮込んで、カレーみたいな味と色にしたいんだけどどうすればいいのかな?」

みたいな感じ
正解のソースコードをKAG込みで張ってもらわんと気が済まないのか
0281名前は開発中のものです。2015/07/31(金) 15:43:59.04ID:j2ZgS7ql
>>280
>>272を確かによく読むとちゃんとわかるように書いてあった
ごめん
>>279でもうまくいけた
ありがとう
0282名前は開発中のものです。2015/07/31(金) 17:39:30.18ID:rGuZZZqP
吉里吉里やkagexやzでメッセージを監視して特定の文字列が出てきたら処理をさせると言うのは出来る?
例えば"ドザエモン"と言うワードが出てきたらfontの色を変えるとかインライン図形に切り替えるとかしたいんだけど
0283名前は開発中のものです。2015/07/31(金) 19:14:57.23ID:I0KHEIj6
indexOfでいいんじゃないの
リファレンスにあるべ
0284名前は開発中のものです。2015/07/31(金) 20:01:52.71ID:9MELTnnV
基本吉里吉里は「ド」「ザ」「エ」「モ」「ン」を1文字表示するタグとして処理するから
先読みとかするように改造しないと厳しいだろ

むしろ事前にGREP機能があるソフトでksファイルの「ドザエモン」をマクロで括るように一括変換しとけば
0285名前は開発中のものです。2015/07/31(金) 23:30:58.33ID:vU5w5/NE
・吉里吉里のレベル
・TJSのレベル
・KAGのレベル

どのレベルでやるか

吉里吉里改造(またはKAG拡張)のレベルなら何でもできるが
システム自体の深い理解がいる

TJSならシーンごとに区切ってindexOfとか

KAGのレベルなら、あらかじめマクロ作って
ksファイルのテキストをタグで囲っておくしかなさそう
0286名前は開発中のものです。2015/08/01(土) 02:31:04.80ID:gyZyt6mP
kagexとか吉里吉里でやれない事はほぼ無いんだからそっち重宝する奴は意味がわからん
そもそもkag.fore.layersみたいな感じにtjsレベルでレイヤ管理出来ないんだからむしろ制限多いだろうさ
0287名前は開発中のものです。2015/08/01(土) 06:00:50.36ID:q2hcCxyS
日本語が読みにくい
0288名前は開発中のものです。2015/08/01(土) 12:57:46.55ID:0/wuswln

kagexてtjsじゃlayer記述出来ないの?
あるでしょ普通
0289名前は開発中のものです。2015/08/01(土) 21:01:22.30ID:HpB6c145
kagexってそのあたりの情報が基本的に全く出てこないせいで使いづらいんだよな
上の方のbvoiceもそうだけどせっかく機能として組まれてるのに読み解けない奴は気づけないって機能が多すぎる
メインで使いたがるのは俺みたいに少し吉里吉里じゃ物足りないって感じてtjsでなんとか出来ないかなって試行錯誤するレベルのスクリプターライターなはずなのに
機能を理解出来るのは、そのレベルの奴じゃ到底無理って言うね
0290名前は開発中のものです。2015/08/01(土) 21:15:02.83ID:MfdGKfhF
マニュアルがないとどうしようもないよなあ。
ソース読めって言うんなら自分で書いたほうが早いし。
0291名前は開発中のものです。2015/08/01(土) 21:16:04.55ID:q2hcCxyS
kagexを参考にしつつ自分で改造 ってのが結局無難なのでは
0292名前は開発中のものです。2015/08/01(土) 22:04:16.23ID:vhMeyRy2
bvoiceは付属のテキストに書いてある通りなんだけどちゃんと全部読んでる?
正確な動作知ってカスタマイズしたいならソース読むしか無いけどそれはKAGも同じでしょ
0293名前は開発中のものです。2015/08/01(土) 22:22:55.60ID:HpB6c145
>>292
txtに確か2書いてはあるけど、このボリュームはどれなのとかそう言うのは何も書かれて無いからかなり使いづらい
探せばキャラの個別の音声に紐付いてるの分かるが、そもそもキャラ個別音声のボリューム調整をどうすんのか分からんって人がいっぱいだと思う
俺も>>288のレス見てそういやkagexではレイヤ表示どうすんだろ?って思って今見てるクチだけどたぶんこのあたりは俺レベルじゃわからんと思う
これがKAGなら本家のリファレンスとごった煮さんとoutFOUCUSさんを見たらだいたい分かるんだけど
使っていれば使い勝手は確かにkagexは良いのに実にもったいない
0294名前は開発中のものです。2015/08/01(土) 22:32:52.87ID:CcbCQz7g
kagはあれでも初期に比べたらかなり解説サイトさん減ったから
最近の新規さんは苦しんでそうだ
Zとexは移動するメリットがあんまりないんだよな、解説の少なさもあるし
OS問題考えるとそのうちzにしなきゃいけないんだろうけど
0295名前は開発中のものです。2015/08/01(土) 22:46:50.61ID:MfdGKfhF
KAGは公式のオンラインドキュメントがかなり豊富だからなあ。
TJSでの弄り方も詳細に書いてくれてるし。
0296名前は開発中のものです。2015/08/01(土) 22:57:34.85ID:vhMeyRy2
tjsのサンプル置いておくだけでも役に立つ人はいるのか
暇なときに書くようにするわ
0297名前は開発中のものです。2015/08/02(日) 00:55:17.87ID:kRQ1fDOF
うーん
やっぱりkagexのレイヤの表記わからなかった。。。。
0298名前は開発中のものです。2015/08/02(日) 02:43:17.86ID:tcX15TRH
レイヤの表記ってなに
やりたいことによるけどKAGと違って直接Layer使うことは少ないよ
0299名前は開発中のものです。2015/08/02(日) 03:15:29.30ID:kRQ1fDOF
>>286が言ってるようなkag.fore〜みたいな表記
言われてみて、そういえばどうすんだ?みたいな
0300名前は開発中のものです。2015/08/02(日) 03:35:13.36ID:tcX15TRH
キャラクタならworld_object.env.characters["キャラ名"].targetLayer
環境レイヤならworld_object.env.layers["レイヤ名"].targetLayer
舞台レイヤならworld_object.env.stage.targetLayer
イベントレイヤならworld_object.env.event.targetLayer

使ってないときはvoidだし変更も保存されないしバグの元にしかならないので直接触ってはいけない
targetLayerの前のworld_object.env.stageのレベルでなんとかするのが楽
0301名前は開発中のものです。2015/08/02(日) 03:57:32.50ID:kRQ1fDOF
thx
俺程度じゃわからんわけだ
オリジナルの効果を合成とか出来ないかと思ったがおもいっきりバグの元ぽいな
0302名前は開発中のものです。2015/08/02(日) 04:20:07.65ID:tcX15TRH
やり方は色々あるけど結構面倒そうね
・GFX_Movieとか参考にしてGenericFlipの形で追加する
・AffineLayerとかを拡張する形でLayerレベルで機能つけてKAGEnvImage.layerRedrawFunction/commandsあたりから呼び出す
・効果使う部分だけkag.fore.layersのようなKAGの機能を使う
・効果使う部分だけ独自のレイヤを使う
0303名前は開発中のものです。2015/08/02(日) 10:20:40.75ID:O8rtFe4j
(´・ω・`)誰かMP4
0304名前は開発中のものです。2015/08/02(日) 18:04:01.22ID:zC5rDFs6
効果を使う部分だけを独自レイヤにしようとしてもlevelと言う壁があって任意のレイヤの間に挟みづらいと言う罠
0305名前は開発中のものです。2015/08/02(日) 18:07:43.46ID:+lMjCGhv
どなたか解決策をエスパーお願いします。
KAICHOさん作、アニメーションボタンプラグイン(AnimButtonPlugin.ks)を導入し、TJSに挑戦の右クリックサブルーチンを作りました。
ここまではよかったのですがアニメーションボタンを表示中に右クリックサブルーチンに入り戻ってくるとボタンが消えてしまいます。
ですがanimbuttons_obj.animButtons.countとコンソールにうつとボタンの数は0ではなく先ほど表示されていた数だけあります。

tempsave,temploadを使っていて自分ではその辺のセーブとロード時の挙動が怪しいと思っているのですがさっぱりです。
お願いします。
0306名前は開発中のものです。2015/08/02(日) 19:15:05.69ID:tDTuJrxb
>エスパーお願いします。

声に出して読みたい日本語
0307名前は開発中のものです。2015/08/02(日) 19:32:38.64ID:8ZsdRJg+
あんまり解ってなかったり地力で直せない人が、プラグインを方々から借りてくるのはおススメしない
借りるなら一箇所にそろえた方がいいんじゃない
干渉しあってエラー起こしてそう
0308名前は開発中のものです。2015/08/02(日) 21:08:14.73ID:rO9osuPR
tjsの勉強中なのですが、これでなぜメンバが無いとエラーが起きるのでしょうか?

function test() {
var test0 = new global.Layer(kag, kag.fore.base);
kag.add(test0);
with(test0){
.setSize(kag.scWidth,kag.scHeight);
.fillRect(0,0,kag.scWidth,kag.scHeight,0xffc0ffc0);
.fillRect(0+128,0+128,1280-256,720-256,0xfffffc0c0);
.visible=true;
}
}

test();
test0.fillRect(0+256,0+256,1280-512,720-512,0xfffc0c0ff);
0309名前は開発中のものです。2015/08/02(日) 21:11:36.02ID:tDTuJrxb
var test0が関数testの中だけで通用するローカル変数だからちゃうの
JavaScriptちゃいまっせ
0310名前は開発中のものです。2015/08/02(日) 21:28:32.16ID:rO9osuPR
なるほどこれだと確かにいけました。

function test() {
var test0 = new global.Layer(kag, kag.fore.base);
kag.add(test0);
with(test0){
.setSize(kag.scWidth,kag.scHeight);
.fillRect(0,0,kag.scWidth,kag.scHeight,0xffc0ffc0);
.fillRect(0+128,0+128,1280-256,720-256,0xfffffc0c0);
.visible=true;
}
test0.fillRect(0+256,0+256,1280-512,720-512,0xfffc0c0ff);
}

test();

ちなみに、functionの中で作ったものを外で変更できるようにするにはどうするのでしょうか?
。外で宣言するしかないのでしょうか?
0311名前は開発中のものです。2015/08/02(日) 21:32:12.15ID:tDTuJrxb
functionの中で宣言した時点で使い捨てってことやで
気持ち悪いならclassでも使え
0312名前は開発中のものです。2015/08/02(日) 21:38:35.65ID:rO9osuPR
わかりました
クラスを作ってそこでやってみます
ありがとうございます
0313名前は開発中のものです。2015/08/02(日) 22:35:09.56ID:+lMjCGhv
>>307
吉里吉里にアニメーションボタンプラグインだけを入れて試してみたところダメでした。
プラグインの中身を見るとセーブ・ロードにも対応してるような気がするのですが、セーブ・ロードしてもボタンは消えてしまっています。
バグ報告をしたほうがいいのかもしれませんが、自分の使い方が悪いのかもしれないと思ってしまい躊躇してしまいます。

どなたか同じような症状の方はいらっしゃらないでしょうか?
0314名前は開発中のものです。2015/08/03(月) 02:24:30.16ID:/I+c3JEU
>>310で追加の質問お願いします
これは一度表示させた画像はどうやったら消せるのでしょうか?
kag.test0.visible=false;
やglobal.kag.test0.visible=false;
でもダメでした
0315名前は開発中のものです。2015/08/03(月) 03:15:18.69ID:W1SFSvOc
kag.add(test0);はkagがinvalidateされた時にtest0も一緒に消されるというだけで
kag.test0が生えるわけではないんだぜ。
ローカル変数をその後も使い続けるなら
function test() {

return test0;
}
kag.test0 = test();
とか見える場所に別途保存しておく必要がある
0316名前は開発中のものです。2015/08/03(月) 09:06:28.80ID:yT2rIPNt
>>313
中身も晒さずにエスパーしてくださいっていうのがまず自分がおかしいと理解しようよ
吉里吉里のテンプレートデフォルトのままでプラグイン入れて、きちんと指示通りにソース書いて
それでも動かないならバグ報告、動いてるなら自分の組み方が悪い
前提のきちんとソースもかけてないならやっぱり自分が悪いになる
KAIXHOさんに聞くにしても再度ここで聞くにしても、一通りやった上で中身さらせな
0317名前は開発中のものです。2015/08/03(月) 12:23:35.19ID:WFwz4tMP
>>315
少し分かった気がします
これまで漠然としか分からなかったreturnの意味なんかがだんだん分かってきました
まだvisible=false;は出来てませんので、いろいろ試してみてまた分からなかったら初歩的な質問だと思います
よろしくお願いいたします
0318名前は開発中のものです。2015/08/04(火) 14:45:25.41ID:qb1J7P1e
履歴の保存行数を2万にしてみたんだけど、あれだな、さすがにスキップ処理とか
重くなるねw
0319名前は開発中のものです。2015/08/04(火) 14:49:21.93ID:MSAPo8BG
1000もあれば十分でしょ
そもそも履歴なんか、さっきの分のニュアンスどうだったっけ?的な確認くらいにしか使われないし
0320名前は開発中のものです。2015/08/04(火) 22:09:10.84ID:Ikj6qQIS
そもそも履歴2万行もさかのぼらせるつもりなら、それ用の大幅ロールアップダウンボタンみたいなのも作らないといけないだろ
「俺こんなことも出来るんだよ すげー」は、わかる奴が見たら「無意味なことしてるなこのバカ」としか思わない
0321名前は開発中のものです。2015/08/04(火) 22:40:40.01ID:qb1J7P1e
他所のゲームで履歴が短いのに不満だったので長くしてみたんだけど
普通のユーザーってあんまり使わないのかなあ。

俺、伏線とかセリフとかをかなり遡って再確認したいときがよくあるので……。

>>320
ロールアップボタンで対応する発想が意味分からないし、そんなもので
誇る君の思考回路も理解できない。
普通にスクロールバーでしょ?
0322名前は開発中のものです。2015/08/04(火) 22:41:26.03ID:X84MVl5r
2万行スクロールさせるのか(困惑)
そんなもので誇る君の思考回路も理解できない。
0323名前は開発中のものです。2015/08/04(火) 22:53:16.06ID:qb1J7P1e
いや、だから誇ってないって。
誇るとかいう思考回路を持ち出したのは君でしょ?

スクロールバーでスクロールするのって一瞬だよね。
単に履歴が長ければ使う人には喜んでもらえるかなあと思っただけなんですけど。
0324名前は開発中のものです。2015/08/04(火) 22:55:07.04ID:X84MVl5r
2万行履歴があって100行戻りたいときスクロールバーじゃ
どんだけ微細な操作が要求されるかも想像できないのか(呆れ)
0325名前は開発中のものです。2015/08/04(火) 23:02:26.93ID:qb1J7P1e
>>324
うーん、たとえばさ、このスレって既に2284行あるのね。
君がどのブラウザで閲覧してるか知らないけど、たとえばレス番100番辺りを
見ようと思ったときに、そこまでスクロールする操作ってそんなに苦労するかな?

ある程度、スクロールバーのつまみで一気にスクロールして、あとは
キー操作なりページアップorダウンなりですぐ見れるよね。

っていうか、なんでそこまで喧嘩腰なのか理解できないよ。
0326名前は開発中のものです。2015/08/04(火) 23:07:37.56ID:X84MVl5r
>>325
そういうので済むのがまさに1000・2000のレベルで、あとはおせっかいだし
マジでやるとしたら補助のボタンなりなんなり必要ってことでしょ……
0327名前は開発中のものです。2015/08/04(火) 23:10:39.58ID:qb1J7P1e
>>324
ためしに、テキストエディタに3万行のテキスト貼り付けて
ウィンドウの高さを15行くらいにして100行戻る操作をしてみたけど
3秒も掛からないぞw そこまで馬鹿にするなら試してみてよ。
0328名前は開発中のものです。2015/08/04(火) 23:13:12.44ID:X84MVl5r
できるか・できないか じゃなくて、できても嬉しくないし
「あ、スクロールバー行きすぎた」とかのストレス発生する可能性まであるなら
ほんと無意味って話
0329名前は開発中のものです。2015/08/04(火) 23:25:09.39ID:qb1J7P1e
>>328
そのストレスが発生する可能性は最大1000行の履歴でもあり得るよねえ。
それは単にインターフェイスの設計の問題だよね。

まあ、履歴が増えるにつれてスキップ処理が遅くなるのは分かったから
適正値を自分なりに探りますわ。
お付き合いどうもありがとうございました。
0330名前は開発中のものです。2015/08/05(水) 00:13:46.25ID:yawFt3M4
2万は本当に間抜けだと思うよ
だってまず2万行読むのにどれだけ時間かかると思ってるの?
そのあいだゲームし続けるの?
一度タイトルに戻ったりゲーム終了したら、履歴はリセットされるわけで
むしろその履歴を残したとして、ゲームを最初から開始したら変な風に履歴に残るわけで
まじに間抜けなんだけど
なんでもつっこめばユーザーが喜ぶとか、UI設計の基礎から勉強した方がよいよ
この時期だからそんなアホなこと言ってるの同人さんだと思うけど
0331名前は開発中のものです。2015/08/05(水) 00:23:37.08ID:MXc4BKcE
>>330
>一度タイトルに戻ったりゲーム終了したら、履歴はリセット

……はぁ?

>むしろその履歴を残したとして、ゲームを最初から開始したら変な風に履歴に残る

……はぁ?

普段どういう作り方してるの?
履歴の仕様、見直したほうがいいですよ。
0332名前は開発中のものです。2015/08/05(水) 00:46:46.07ID:yawFt3M4
ま、まさかずっと履歴残したままとか??
間抜け通り越してダメだこりゃだな
タイトル戻ったりゲーム終了したら履歴消すだろ
残す意味がわからんわ
0333名前は開発中のものです。2015/08/05(水) 00:57:48.35ID:ssYYi2/O
冒頭まで戻れるバックログは、
吉里吉里ベースの商業タイトルにはわりとあるよね
0334名前は開発中のものです。2015/08/05(水) 00:58:43.61ID:ktTOuFRn
ただしスクロールバー1個で戻れとはいわない
0335名前は開発中のものです。2015/08/05(水) 01:02:03.83ID:MXc4BKcE
>>332
ちゃんとタイトル画面で履歴はクリアしてますよw
ロードするときは現在の履歴をクリアして、セーブした時点での履歴を読み込んでいるんですわ。

>>330の言い草だと、あなたのは
・ロードしても履歴は復活しない
・ゲーム途中でロードしたら前の履歴が残ったまま。以降それに追記
ってなとこですか?w
0336名前は開発中のものです。2015/08/05(水) 01:14:37.23ID:MXc4BKcE
>>334
そりゃ普通に作ればボタンも付けるでしょ。
HistoryLayer.tjsに関数あるし。
0337名前は開発中のものです。2015/08/05(水) 08:47:37.24ID:0SAxbh2b
外野2だけどセーブした時点の履歴なんて保存してたら処理が凄い事にならね?
それとも最近はそういうのが流行なの?
ロード時クリア、タイトルもクリアしてるけど、特にプレイヤーから不満が出たことはないわ
0338名前は開発中のものです。2015/08/05(水) 08:53:57.60ID:9R2/trYO
プレイヤーから不満は来たことないが、デバッグやらまともにできないような人達から
金を貰う以上できなきゃ困る!理由つけて出来ないのを誤魔化してるんだろ!やれ
って言われることはある。履歴は全部残せってさ頭おかしい
0339名前は開発中のものです。2015/08/05(水) 09:09:05.74ID:ssYYi2/O
>>337
KAGだと大変
無限バックログは根本設計が別物で、
ついでにバックログジャンプもついてる
0340名前は開発中のものです。2015/08/05(水) 09:09:18.39ID:0SAxbh2b
>>338
上でも書いてる人いけどそんなに履歴って見るか…?やれって言ってる人は自分が実際使ってるのかね
テキストだけログ見るくらいならシーン回想つけた方が良いだろうし
過剰ともいえるシステムつけてるところや、つけたがる所たまにあるけど
それ何人が使ってるの?費用対効果考えてつける意味本当にあるの?と時々思う
まー個人の自由なんですけど
■ このスレッドは過去ログ倉庫に格納されています