■吉里吉里/KAG/TJS雑談質問スレ■その22
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2010/10/01(金) 10:44:25ID:z47vESnT自作ゲームの進行状況や製作ツールについての話、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雑談質問スレ■その21
http://hibari.2ch.net/test/read.cgi/gamedev/1274510516/
0007名前は開発中のものです。
2010/10/01(金) 11:31:18ID:cIE5Hgxqhttp://hibari.2ch.net/test/read.cgi/gamedev/1285897465/
次スレ
連投誤爆のせいで規制食らったからID変えたけど、>>6のAAはダレかヨロ
ここ三日でとりあえずTJSの本を買って読み漁ってなんとか新しい窓に画像表示するところまでは逝った。
でも、吉里吉里に組み込もうとするとエラーが出るので先は長そう。
根本的にsetter? gettar?これってなんのため?とか言うレベルだから、まだまだ遙か先orz
0008名前は開発中のものです。
2010/10/02(土) 01:08:10ID:y+gpSIbX楓さん。
これがDL先URL
ttp://kaede-software.com/krlm/plugin/
/ksを読む限りstopmoveのたびにinvalidateで動画捨ててるぽいし、デストラクタもされてるぽいんだけど、なぜかメモリーをチェックする限り消えて無い。
一応stopamovの後に必ず
var amovcls = new AlphaMovie();
amovcls.clear();
System.doCompact(clAll);
として、強制的にガベージコレクションしてるんだけどkag側分のゴミだけを収集してるだけみたいで、動画再生>消す>ガベージコレクション>再生>消す>ガベージコレクション・・・・とやってるとあっという間にパンクする。
検証してもらえるなら、とりあえず確実に動くamvファイルとfirst.ksを速攻作った。
クリックするたびにループするから、ループさせながらタスクマネージャーでも見てるとみるみる使用量が増えていくのがわかると思う。
ttp://www1.axfc.net/uploader/Si/so/86890.zip
0009名前は開発中のものです。
2010/10/02(土) 04:11:26ID:7WJmB71U0010名前は開発中のものです。
2010/10/02(土) 04:21:52ID:uOKAczia俺だったら無視してユーザさんが適切な状態で連続をしない事を祈る程度だけどもw
テストみたいにオブジェクトを使いまわさずに何度も作っては殺しってやること自体避けるべきと思うけどそれはそれとして
これって、普通にMPEG再生でもこうなるんですかね?
光系のエフェクトならレイヤーモードで再生してレイヤの描写モードをltAdditiveだかにするのが枯れた手段だと思うけど。
0011名前は開発中のものです。
2010/10/02(土) 07:07:15ID:y+gpSIbXで、そのあいだにも通常の動画再生したり、多少重めの処理をさせたりしてるのね。
すると、200を超えた当たりで普通の動画再生しようとすると、preparebideoしようとしたらそこでビッ!とエラーが出るのよ。もちろん、そこの構文が間違って無いのも確認済みだし、それはどこででも起きる。
実際それまでちゃんと動いてたところ何カ所ででも起きた。
で、負荷テストもかねて、いろいろきっつい処理をさせつつ、間にalphamovieを挟んでテストしたら、ものの3分でパンクするようになって、さすがにまずいだろうと・・・
今回はささっと作ったから光系のエフェクトでそこそこ大きなファイルになる物って感じで作ってるだけだから背景は黒バックだけど、通常の彩色背景に差し替えればちゃんとαチャンネルが抜けてるのを確認して貰えると思う。
使い方のバリエーションとしては、最前面に配置して光線やワイプ(トランジット)用の動画にはめたり、背景と前景の間に挟んで、背景にエフェクトを掛けてるように動的に見せたり(それ自体はその動的な部分を通常の動画として作っても良いのだろうけど)、
複数のα動画を挟んで、Aの動画とBの動画を別々のエフェクトをさせながら前景合成させたりと言う感じに使ってたの。
もちろん背景に町並み>車道に車(α)>前景立ちキャラ>レンズフレア・・・的な使い方とか、もちろん通常動画+α動画と言う風にも使える。
1枚だけなら描画モードを変えるだけでも光系なら誤魔化しも聞くと思うんだけど、複数毎重ねると予期しない結果になるし、ちょっとどうしたものかと言う感じ。
良いツールだけに、このメモリ上手く消せてないのを除けば、トランジット時に透明度がそれに釣られてその間だけ変化してしまうとか、スロットが最大3つまでとか多少使い方にクセはあるけど、演出には恐ろしく使えるツールなんだけど・・・・・
0012名前は開発中のものです。
2010/10/02(土) 07:08:51ID:y+gpSIbXた・・たまには間違うんだからね!
0013名前は開発中のものです。
2010/10/02(土) 07:58:11ID:euHXtVcLwikipediaは編集のハードルが高くてwikipedia上にページ作ってもあんまり網羅できそうにない
もっと別のwikiレンタルかなんかでまとめるのが良いんじゃないかな
wikipediaからそのまとめwikiにリンクも張って
0014名前は開発中のものです。
2010/10/02(土) 09:46:42ID:y+gpSIbXもしくは他所のwikiに書けば済むと思うんだけど。
まずは議論の言い出しっぺ辺りが他所で作って、上手く行きそうなら本家にコピペしてもいいんじゃないかと思うんだけど、どうでも良い事で議論してるなーと思う。
0015名前は開発中のものです。
2010/10/02(土) 11:02:35ID:3whldAv2情報を詰め込む場所なんだから
0016名前は開発中のものです。
2010/10/02(土) 11:22:07ID:y+gpSIbXとりあえず今通常のMPGもっと重い動画で試したんだけどまったく問題無い。
稀に5〜6M程度一時的に増えるけど(たぶん連打したから取りこぼし?)、すぐに回復する。
[l]を外して1時間ブン回したけど、これでもメモリ使用量は増えてない。
0017名前は開発中のものです。
2010/10/02(土) 11:29:44ID:Kfg0TknD0018名前は開発中のものです。
2010/10/02(土) 11:39:41ID:Wz5g/OuE0019名前は開発中のものです。
2010/10/02(土) 16:52:28ID:y+gpSIbX忙しいらしくて現象の確認はしてるらしいけど、修正はずっと後だって。
同人だったらメモリパンクに目を瞑って使っちゃうけど、製品だから不具合出るのわかってるものを使えないのがとても残念orz
すごく良いプラグインだったのにな・・・
アルファ動画に関しては、これで完全に手詰まりだ。
0020名前は開発中のものです。
2010/10/02(土) 17:08:09ID:6NAFmYf60021名前は開発中のものです。
2010/10/02(土) 17:34:42ID:y+gpSIbXせったー?げったー?これなんでこんな事してるの?レベル。
とりあえずの目標は画像を実際の画面に反映>ムービーの反映>ムービーコマンドののスクリプト化・・・先が見えない。
さっき新しい窓で自分で書いたクラスでムービーを表示しようとしたら、警告メッセージがずらーーーーっと出てきてハングしたorz
0022名前は開発中のものです。
2010/10/02(土) 18:13:25ID:2+k81MSS0023名前は開発中のものです。
2010/10/02(土) 18:27:18ID:6VfS66vv冗談抜きで天才
0024名前は開発中のものです。
2010/10/02(土) 19:04:00ID:y+gpSIbXあと参考本とかだと、どういうコマンドかをまず書いてそのコマンドの実行が最下層って書き方だから、まず書いて、コマンドが必要になったらcallとかで下とか別のファイルに飛ばして・・・みたいな書き方をずっとしてきたから見た目が逆転してる構文に今一慣れない。
とりあえず別窓上で、イメージ通りに書いてなんとか動画を再生するところまではうまくいった。 でも、止め方も、実際のゲーム画面に表示する方法も、まだわからないからとりあえずまた参考書を読んで理解しないと。
でも二日前まではlayerEXBTOAのksファイルが何やってるのかチンプンカンプンだったのが、今日は書けないまでも読めるようになってたのには自分でもかなり驚いたよ。
ところで今日パンティー&ストッキングを観た。
まんまAEで作られてて、あのままKAGでゲーム作れるだろうとか思った。
0025名前は開発中のものです。
2010/10/02(土) 19:12:33ID:kAvwmS9X0026名前は開発中のものです。
2010/10/02(土) 19:34:01ID:Wz5g/OuEデバッカがな
これではつかいものにならない
プログラム未経験でクラスを無意味に扱うとは無意味に思えるが本人が進んでやったことだから知らない
0027名前は開発中のものです。
2010/10/02(土) 19:52:26ID:6VfS66vv処理の流れを逐一追いかけてしまうというのがあるんだよな。
まず全体を眺めて、気になるところだけ関数の中身を覗くようにするのがソースの正しい読み方。
0028名前は開発中のものです。
2010/10/02(土) 20:27:05ID:uIrg9WvvTJS覚えるまで消えろ
0029名前は開発中のものです。
2010/10/02(土) 20:46:59ID:k5UYLbBcErogameScape の属性検索で吉里吉里製の作品を一覧できるぞ
完璧な物なのかは解からんがこの先もやってくれるからこれでいいんじゃね?
0030名前は開発中のものです。
2010/10/02(土) 22:29:55ID:406mZJKu改造したくないならこんなのを作ってみたのでどうぞ(質問不可)
ttp://www1.axfc.net/uploader/Sc/so/159200
0031名前は開発中のものです。
2010/10/02(土) 23:14:48ID:HJhiVshd0032名前は開発中のものです。
2010/10/02(土) 23:24:19ID:/7YSojRK0033名前は開発中のものです。
2010/10/02(土) 23:46:11ID:y+gpSIbXうおーー まじにありがとう、うまく行った! まだいろいろ検証してないけど、仕様が通常videoと一緒ならたぶんトランスとかもいけると思う。
負荷テストして、うまくゴミ掃除出来てるようなら、使わせて頂きます。
本当に本当にありがとう。 これで専門外のTJSを突貫で覚える必要がなくなった。 やっとシナリオに専念出来る。
ありがとうありがとうありがとう。
0034名前は開発中のものです。
2010/10/03(日) 00:03:37ID:zt6XYT/+これを機に少しずつTJSを覚えていくといいさ
0035名前は開発中のものです。
2010/10/03(日) 09:51:02ID:sd2SQdn3結論から言うと、問題無くガベージコレクションを行うので、3時間くらい無理矢理ブン回しても問題無く動く。
本当にありがとう、使わせて貰います。
ところで、検証の段階でKAGの不具合っぽいの発見。
*test01
[layopt layer=message0 page=fore visible=false]
[image storage="背景" layer=base page=fore visible=true]
[freeimage layer=1 page=fore]
[layopt layer=1 page=fore visible=false]
;[videolayer slot=1 channel=1 layer=1 page=fore]
[videolayer slot=1 channel=1 layer=1 page=fore]
[video slot=1 loop=true mode=layer]
[openvideo slot=1 storage="検証テスト.mpg"]
[preparevideo slot=1]
[wp slot=1 for=prepare]
[layopt layer=1 page=fore visible=true]
[playvideo slot=1]
[wait time=1000]
;[l]
[stopvideo slot=1]
[clearvideolayer slot=1 channel=1]
@iscript
//ガベージコレクション
System.doCompact(clAll);
@endscript
[jump target=*test01]
0036名前は開発中のものです。
2010/10/03(日) 09:58:41ID:sd2SQdn330分くらいすると時々[wait]が無視されて[wv]に差し替わったような挙動になったり(挙動として、loop=true>weitでは無くloop=false>wvと言う感じに、1秒再生では無く最後まで再生してループとなる)、
画面が1秒再生したところでストップして、あれ?と思ってクリックするとまた動きだしたりと若干不安定になる。
この程度なら目を瞑っても問題無いし、第一書式としては本来1秒再生なんだからloop=falseとした方が良いところをtrueのままだから、こちら側のせいもあるのかも知れないけど、
書式上これでもちゃんと動くはずなんだけどね。 実際最初はちゃんとイメージ通りに動いてる。
バージョンはkr2_232。 最新ね。
TJSはシナリオ作業が終わったら、組み込みながらもう少しいろいろと覚えて行くよ。
実際今回作って貰ったファイルには見た事無い命令とかたくさん入ってて、まだ先が長そう。
動画を拡大>縮小しながら再生とか、動画自体に再生しながらリアルタイムにエフェクトをつけたりとかしてみたいし、
なにより現状だと細かい動画にいくつも切り分けして順次再生してるんだけど、前にも少し書いたけど、
ここからここまで再生>条件成立したら再生終了待って(もしくは待たないで)このフレームからこのフレームまで再生>
条件が揃わなかったらこのフレームからこのフレームまで再生したあとまたトップに戻る・・・・とか一度に読み込んでラグが無い方が無難な処理とかもあるし。
0037名前は開発中のものです。
2010/10/03(日) 12:53:37ID:zt6XYT/+文章が冗長すぎて読んでて非常に面倒臭いw
0038名前は開発中のものです。
2010/10/03(日) 13:44:25ID:lf7NXxiR0039名前は開発中のものです。
2010/10/03(日) 18:20:17ID:sd2SQdn3いいよこれ。 通常ムービーと同じ感覚で使えるから、ものすごくいい。
0040名前は開発中のものです。
2010/10/03(日) 21:07:22ID:ymPnTk68なったりなったり。
変数のソートというか比較というかで詰まってる自分。
ちょこちょこやりつつちょっとずつ噛み砕いて理解するぜ……。
ちょっとずつ進んでる道がずれすぎてないことを祈りつつ。
0041名前は開発中のものです。
2010/10/03(日) 22:03:35ID:onv9uIvQ0042名前は開発中のものです。
2010/10/03(日) 23:12:27ID:hww4nF+iというのもスタッフロール(クレジット?)を流してる最中にその流れを止めずに背景を変えたいんですがうまくできません。
どなたか教えていただけないでしょうか
[nowait]
[locate x=300]~~~[r]
[locate y=1000]~~~~
シナリオ
[locate x=300]~~~~[r]
[endnowait]
[move layer=&sf.staffroll_mlayerNumber time=100000 path="(0,-1500,255)"]
;←ここの間で背景のトランジョンを数回行いたい
[wm]
0043名前は開発中のものです。
2010/10/03(日) 23:27:59ID:sd2SQdn3wvは処理終わるまで待機だから、動画終わるまで動かないよ。
0044名前は開発中のものです。
2010/10/03(日) 23:33:05ID:sd2SQdn30045名前は開発中のものです。
2010/10/03(日) 23:52:57ID:K6/+Nvo/>[move layer=&sf.staffroll_mlayerNumber time=100000 path="(0,-1500,255)"]
の下に
[move layer=&sf.staffroll_mlayerNumber time=100000 path="(0,-1500,255)" page=back]
追加
0046前スレ182
2010/10/04(月) 01:42:43ID:GH4uBMwp環境別テストしたらWin2kでDLLが読み込めないことが発覚したので、対応版をあげといた。
http://www.boleros.x0.com/
0047名前は開発中のものです。
2010/10/04(月) 02:09:28ID:20G54kMO0048名前は開発中のものです。
2010/10/04(月) 02:44:10ID:M/uUz92wサポートも終了だしね。
0049名前は開発中のものです。
2010/10/04(月) 04:13:41ID:8Z15uRNaいつかあんたのプラグインを活用したゲームを作ってみせる
0050名前は開発中のものです。
2010/10/04(月) 04:17:57ID:fHZMz6k5色々凄そうな事やってるとは思うんだが
Wiki見ても一体どういう用途でどんな風に使えるのかさっぱり分からん
0051名前は開発中のものです。
2010/10/04(月) 05:15:27ID:O7avlGYE//減衰振動
var time=1000;
var cycle = 10;
var stick = 0;
var depth = 50;
var accel = -2;
for(var i=0; i<time; i+=0.1)
{
var tick = i-stick;
if(accel < 0)
{
// 上弦 ( 最初が動きが早く、徐々に遅くなる )
tick = 1.0 - tick / time;
tick = Math.pow(tick, -accel);
tick = int ( (1.0 - tick) * time );
dep = depth * (1-tick/time);
}
else if(accel > 0)
{
// 下弦 ( 最初は動きが遅く、徐々に早くなる )
tick = tick / time;
tick = Math.pow(tick, accel);
tick = int ( tick * time );
dep = depth * tick/time;
}
tick = tick/time;
var y = dep*Math.sin(tick*2*Math.PI*cycle);
kag.fore.base.fillRect(i/time*800, 300+y, 1, 1, 0xffffffff);
}
0052名前は開発中のものです。
2010/10/04(月) 06:32:46ID:d4p/o2PAコード片なんか貼って何が聞きたいんだよ。
コミニュケーション能力皆無だな。
0053名前は開発中のものです。
2010/10/04(月) 08:05:40ID:kLDQiaclゲームや映画に求められるのはリアルっぽい動きだから、リアルな動きは不要。
0054名前は開発中のものです。
2010/10/04(月) 11:09:13ID:20G54kMO0055名前は開発中のものです。
2010/10/04(月) 12:08:22ID:kLDQiacl心臓はドキンとは言わないけど、ドキンと鳴らした方がときめいてござる。
0056名前は開発中のものです。
2010/10/04(月) 14:02:05ID:owQ++5K5なくなるじゃないか
すごい技術だろうなあとは思うけど
0057名前は開発中のものです。
2010/10/04(月) 16:49:20ID:SXK0y82W背景のオブジェクトを全部個別にレイヤー分けして、
独立して移動したり回転させないといけない。
そもそも、ゲームの「揺れ演出」って、地震じゃなくて主人公=プレイヤーの
揺れなんじゃ……殴られたり落ちた時なんかのさあ……。
0058名前は開発中のものです。
2010/10/04(月) 17:03:20ID:3AlzEBp2ソースコード エロ画像ウマーなんだろうな
0059名前は開発中のものです。
2010/10/04(月) 18:20:16ID:9SDwMndB本物を再現することが喜ばれるんじゃなくて、あたかも本物であるかのようにウソを見せて錯覚させるのが大事なんだけど
そこんとこ勘違いして「やるからには当然、本物を再現しなきゃダメだろ」ってなっちゃうと白けた作品づくりになっちまったりするのよな
0060名前は開発中のものです。
2010/10/04(月) 18:45:06ID:kLDQiaclテレビのドラマの安っぽいカメラ揺らしの地震の表現すらダメだっていってた。
2012とかも内容はともかく、大地震を車で逃げ回るシーンの地面の崩れ方とか、大地が割れて火山ができあがったその火口の目の前で棒立ちで突っ立ってたりとか、あり得ないだろうと思うけどやっぱり手に汗握る。
そう言うことだと思う。
0061名前は開発中のものです。
2010/10/04(月) 19:14:48ID:O7avlGYE定規弾いたみたいに気持ちよくビヨヨー……ン、ンってさせたい。
0062名前は開発中のものです。
2010/10/04(月) 20:40:13ID:kLDQiacl0063名前は開発中のものです。
2010/10/04(月) 21:04:00ID:3OYq835gつまりホラーは幽霊にあったコトがあるから怖いってコトなのか?
俺はUFOも幽霊もみたコトあるが、ホラーは全く怖くもなんともないんだが。
0064名前は開発中のものです。
2010/10/04(月) 21:17:14ID:kLDQiaclUFOも幽霊もみたコトあっても、映画やゲームのホラーがリアルに感じ無いと言うなら、君にとってそれはリアルとは思えないと認識してるってコトだろう。
ちゃんと理解してるじゃないか。
0065名前は開発中のものです。
2010/10/04(月) 22:41:23ID:mxwzZ9fS0066名前は開発中のものです。
2010/10/05(火) 01:57:21ID:dE3ITe/gありがとうさっぱりわからんかった
0067名前は開発中のものです。
2010/10/05(火) 02:52:23ID:OnyzvOErl*sin(a*t)*exp(-b*t)
完全にゼロに収束させたい場合には
l*sin(a*t)*(exp(-b*t)-exp(-b*T))/(1-exp(-b*T))
t: 揺れはじめからの経過時間
T: 揺れ続ける時間(定数)
a: 適当な正の実数(定数) 揺れの周期にかかわる
b: 適当な正の定数(定数) 揺れの減衰にかかわる
l: 適当な正の実数(定数) 揺れ幅にかかわる
sin -> Math.sin
exp -> Math.exp
0068名前は開発中のものです。
2010/10/05(火) 03:13:40ID:dE3ITe/gすっげー! ありがとうありがとう
0069名前は開発中のものです。
2010/10/06(水) 04:03:54ID:3cY2Py1aところで誰かマルチコア版試した?
0070名前は開発中のものです。
2010/10/06(水) 15:33:02ID:Anf+MEpq前は気にならなかったんだけど今回動画のシンクロをきっちりやろうとすると、裏と表に同時に同じ動画を再生させつつトランスしなくちゃいけないんだけど、動画を一度裏から表にトランスすると、その段階で裏の動画はストップする。
だから二度目のトランスを行うと止まったままフェードしてくるんだけど、おそらくこれってどっちも不具合だよね?
0071名前は開発中のものです。
2010/10/06(水) 17:33:53ID:cj/3C9J/0072名前は開発中のものです。
2010/10/06(水) 18:16:55ID:Anf+MEpq0073名前は開発中のものです。
2010/10/06(水) 18:26:55ID:Jfc+aZKa0074名前は開発中のものです。
2010/10/06(水) 19:38:09ID:Anf+MEpqmoveでleftを無理矢理変えると、トランスで今度はその座標に表示されるようになるから、なんとかなりそうな気もするんだけどなぁ
現状ではクロスフェード(transのcrossfadeじゃなくて用語として)的に現在の座標のキャラをFOしながら別の場所にFIさせるには別レイヤーを使ってるんだけど、グリグリ動かす事になるともうレイヤー管理が大変。
0075名前は開発中のものです。
2010/10/06(水) 19:46:47ID:4HG0/lay0076名前は開発中のものです。
2010/10/06(水) 20:18:50ID:HivMReJ6それができんならあるもの使ってどうにかしろ。
0077名前は開発中のものです。
2010/10/07(木) 01:15:24ID:KMn/L2Hl0078名前は開発中のものです。
2010/10/07(木) 07:01:44ID:+4mGXJM4str = 'p[0]'
例えばこういう状態だとして、strの中には「p[0]」という文字列が入っている訳ですが
これを、「p[0]」の中身を取り出して格納、つまり「str = 100」という状態にする方法はありませんか?
[emb exp="&str"]だと、100という結果が返ってきますが
これでmoveのpathを設定しようと思うと、正しく数値を取り出せません。
0079名前は開発中のものです。
2010/10/07(木) 07:36:15ID:P8632BjZ0080名前は開発中のものです。
2010/10/07(木) 07:40:39ID:d1wS7nyA0081名前は開発中のものです。
2010/10/07(木) 17:02:16ID:+4mGXJM4hoge.bbb[0]=200
hoge.ccc[0]=300
みたいな配列があって、
@hogehoge str="aaa"
みたいにして文字列を渡して、macroの中で「hoge.aaa」「hoge.bbb」という風に文字列を結合して
各配列を参照出来るようにしたい
これが出来ないと、「str="hoge.aaa[0]"」みたいに全部記述しないといけなくて、不便なので
0082名前は開発中のものです。
2010/10/07(木) 18:41:46ID:KMn/L2Hl@macro name=test
@hogehoge str="&hoge[mp.str][0]"
@endmacro
@test str="aaa"
これでhogehogeタグのstr属性に「100」という文字列が入る。
mpとか細かいことはリファレンス・解説サイトを隅々まで読んでくれ。
TJS式でのpath指定はsprintfが役に立つかも。
0083名前は開発中のものです。
2010/10/07(木) 19:32:36ID:P8632BjZそれだと配列が意味をもってるようには見えないわけだが……
サイズ1つでいいの?
仮に hoge.aaa[0] hoge.aaa[1] hoge.aaa[2] といった形に配列がなっているとしてだが、
[iscript]
function concat(name){
var array = hoge[name];
var ret = "";
for (var i=0;i<array.count;i++) { ret += array[i];
return ret;
}
[endscript]
とか処理する関数を作っておけば
[hogehoge str=&concat("aaa")]
とか簡単に処理ができる。複雑な処理をしたければ tjs で関数を作っておいて、それを & で参照して使うのがてっとりばやい。
マクロで引数部をいろいろ差し替えるなら、mp も併用。
0084名前は開発中のものです。
2010/10/07(木) 20:01:01ID:+4mGXJM4御陰様で、思っている処理が出来ました
ありがとうございます
0085名前は開発中のものです。
2010/10/07(木) 22:04:59ID:QyuQ/FYm0086名前は開発中のものです。
2010/10/07(木) 23:58:31ID:H9oNAcW00087名前は開発中のものです。
2010/10/08(金) 06:52:33ID:4Its0hKWback側をerとかで消してから新しいテキストやgraphを入れても、消えてなくて
直前のback側に残ってる内容とトランジションして、それから瞬間的に新しい記述に切り替わる
バグなのか、それともメッセージレイヤを指定してtransするのが間違ってるのか・・・
レイヤを指定出来ないと、前景レイヤをmoveさせながらトランジション出来なくて不便だ
0088名前は開発中のものです。
2010/10/08(金) 07:58:51ID:ZJzsgc35指定無しで全体をトランスすると表示されるから、指定ミスでは無いと思うんだが。
0089名前は開発中のものです。
2010/10/08(金) 08:35:51ID:h7x9doFm0090名前は開発中のものです。
2010/10/08(金) 09:14:55ID:BKTs2AO90091名前は開発中のものです。
2010/10/08(金) 10:07:10ID:zeC6hwBdトランジションは原理わかってないとたいてい記述自体間違えた書き方になるぞ
0092名前は開発中のものです。
2010/10/08(金) 11:31:49ID:ZJzsgc35それと、messageを個別にトランス出来る事もリファレンスに書いてある。
なんでも想定してないの一言で片付ける人いるけど、リファレンスに書いてある以上想定の範囲内と考えるべきではないかな。
[trans layer=message0 method=crossfade time=1000]
こう書いて、トランスしたけど表示されない。
ちなみに、
[trans method=crossfade time=1000]
だと表示される。
message0には、自作枠使ってるけど原因はそのあたりかなとは思う。
0093名前は開発中のものです。
2010/10/08(金) 11:36:38ID:zeC6hwBd0094名前は開発中のものです。
2010/10/08(金) 12:28:27ID:ZJzsgc350095名前は開発中のものです。
2010/10/09(土) 05:13:55ID:7UuzubjLできるよ。
以上。
↓次どうぞ
0096名前は開発中のものです。
2010/10/09(土) 06:38:09ID:CaY/S8Piどこにある?
0097名前は開発中のものです。
2010/10/09(土) 06:42:32ID:CaY/S8Pi0098名前は開発中のものです。
2010/10/09(土) 21:52:16ID:c/TkkFvg;--------------------------------------------------
//引数p(価格)から消費税を計算し価格と一緒に表示する
//関数を作る
function foo(p)
{
var tax = function(n){return n * 0.05;};
System.inform("価格" + p + "円 \n[消費税" + tax(p) + "]円");
}
//関数を使う
foo(1000);
;--------------------------------------------------
1)
foo(1000) なので、function foo(p) の p には 1000 が入る と考えると
function(n) の n にも 1000 が入ると 考えていいのでしょうか?
n * 0.05 は 1000x0.05 で、50 になり、return で var tax = 50 になる
という考え方で大丈夫ですか?
2)
tax(p) の (p) はどう解釈したらいいのでしょうか?
ちなみに (p) をなくして tax だけだと、(object 0x00C87A50:0x00000000)円
と表示されました。
お手数ですが教えて下さい。
0099名前は開発中のものです。
2010/10/09(土) 22:15:05ID:frqapTDk1. ダメです。その時点で tax にはいるのは定義した関数そのものです
2. 名前の後ろの () は関数を呼び出す命令です。tax には関数が代入されてますから、
その時点でその処理が呼び出されて結果が帰ります
0100名前は開発中のものです。
2010/10/09(土) 23:02:54ID:c/TkkFvgレスありがとうございます
書きかたが下手で伝わらなかったら申し訳ないのですが
1.
var tax = function(n){return n * 0.05;};
の時点で 変数tax に入っているのは function(n){return n * 0.05;}
という式中関数そのもの
2.
System.inform("価格" + p + "円 \n[消費税" + tax(p) + "]円");
が実行される時に p に 1000 が代入され(↓こんなイメージ?)
System.inform("価格" + 1000 + "円 \n[消費税" + tax(1000) + "]円");
tax(1000) でfunction(n){return n * 0.05;}が呼び出され
n に 1000が代入される(?)
n * 0.05 は 1000x0.05 で、50 になり、return で tax(p) が 50 になる
System.inform("価格" + 1000 + "円 \n[消費税" + 50 + "]円");
3.
tax(p) は 関数(式中関数)を使うための記述で
function(n){return n * 0.05;} を呼び出して使う
意味としては function tax(n){return n * 0.05;} と同じ
この考え方で大丈夫でしょうか?
0101名前は開発中のものです。
2010/10/09(土) 23:27:58ID:oa714Kq70102名前は開発中のものです。
2010/10/09(土) 23:35:31ID:frqapTDkなお、TJSでは、式中関数(匿名関数)と普通の関数は、物としては完全に同じものです。
つまり、function a(arg) {} は、 global.a = function(arg) {} と等価です。
通常関数と同じものなので、Javascript のレキシカルクロージャのようなローカル変数の引き込みはできません。
かわりに、実行コンテキストを内部保持していて明示的に差し替え可能という独特の機能があり(incontextof で明示指定可能)
これを指して「クロージャ」と呼んでます。言葉の意味が他の言語と全然違うのでご注意を。
0103名前は開発中のものです。
2010/10/10(日) 18:56:03ID:7pzwuuU/あとどこ変えればいいんでしたっけ!?
ググるとsaveフォルダ内のファイルいじれってでてくるんだけど
初回起動なんでsaveフォルダ内にはlogファイル以外ファイルがないんです
0104名前は開発中のものです。
2010/10/10(日) 19:18:00ID:HMcZ4r+0ありがとうございました
これですっきりして次に進めます
PG未経験の独学なので本当に助かりました
クロージャについてはちょっと難しいのですが、
クロージャとコンテキストという項があったので
そこを読み解く時に>>102を念頭に置いて勉強します
今は他言語でいうクロージャとTJSでいうクロージャはまったくの別物、
という認識で、先に進みます
お手数かけました。感謝!
0105名前は開発中のものです。
2010/10/10(日) 19:35:14ID:7pzwuuU/>>103はナシで
例外通知出た時のコンソールのカーソル位置って
必ずしも原因の行ではないのでしょうか?
0106名前は開発中のものです。
2010/10/11(月) 00:02:38ID:l04I2Vhvコレのパスを永遠とかいてみたのですがいつかは止まってしまうので・・・
↓
[eval exp=sf.layer=0]
;←ここから
[move layer="&sf.layer" time=1000 path="(-10,-300,255)(-50,-280,255)"]
メッセージ1行目[r]
メッセージ2行目[r]
メッセージ3行目[r]
メッセージ4行目[l][r][er]
[r][r][r][r]
メッセージ5行目[r]
メッセージ6行目[r]
メッセージ7行目[r]
メッセージ8行目[r]
[wm]
;←ここまで
■ このスレッドは過去ログ倉庫に格納されています