■吉里吉里/KAG/TJS雑談質問スレ■その9
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2006/10/10(火) 06:04:10ID:gTzd6sC4本家BBSで聞きづらい質問や初歩的な質問などでもよいのでわからないことがあればどうぞ。
自分のゲームの進行状況や製作ツール等についての話、TJS等の質問もお待ちしています。
マルチポストはやめましょう。個人叩きも禁止です。
8 http://pc8.2ch.net/test/read.cgi/gamedev/1147590108/
7 http://pc8.2ch.net/test/read.cgi/gamedev/1138099311/
6 http://pc8.2ch.net/test/read.cgi/gamedev/1116774771/
5 http://pc8.2ch.net/test/read.cgi/gamedev/1095183786/
4(タイトルは3) http://pc5.2ch.net/test/read.cgi/gamedev/1081199649/
3 http://pc5.2ch.net/test/read.cgi/gamedev/1067436686/
2(再利用) http://pc2.2ch.net/test/read.cgi/gamedev/1044256119/
1 http://pc2.2ch.net/test/read.cgi/gamedev/1021890648/
吉里吉里2/KAG3雑談質問スレ_過去ログ
http://www.geocities.jp/kirikiri_log/
【公式】
kikyou.info
http://kikyou.info/
吉里吉里ダウンロードページ
http://kikyou.info/tvp/
0533名前は開発中のものです。
2006/11/24(金) 08:27:30ID:xPkkMqUAなんでマクロを最小限にとどめているんだ?
そんなにスクリプトばかりあるとシナリオの修正が大変じゃないのか?
0534名前は開発中のものです。
2006/11/24(金) 09:59:51ID:togbHmW1あんまり多機能マクロ作るのも良くないかも知れんけど
それくらいは一つに纏めちゃっていいんじゃないか
単純計算で容量も1/20になる訳だし、デメリットは特にないと思うけどな…。
0535名前は開発中のものです。
2006/11/24(金) 11:23:59ID:+NBL0PUg自動出力してるからむしろマクロにするメリットがあまりないんだ。
軽量化といってもゲーム全体で数百MB以上あるところから数MB程度の話だし。
うちは1MB以上のシナリオなんて作ったことないからw
スクリプトひな形→自動プログラムに組み込み→出力
スクリプトひな形→マクロ作成→自動プログラムに組み込み→出力
こんな感じで一手間増えるだけの感覚。
0536名前は開発中のものです。
2006/11/24(金) 12:01:10ID:wdxAfOUO0537名前は開発中のものです。
2006/11/24(金) 12:40:14ID:Pxwc7iwi0538名前は開発中のものです。
2006/11/24(金) 13:10:25ID:FOokY2+x0539名前は開発中のものです。
2006/11/24(金) 13:52:11ID:+XQbViM40540名前は開発中のものです。
2006/11/24(金) 14:10:29ID:iUdHJWUGどう考えても>>539の方が正常
マクロ使わないんじゃなくてマクロ使えなくて強がってるだけです。
0541名前は開発中のものです。
2006/11/24(金) 14:16:24ID:KhSfDPS5よほど遅いならともかく、問題なく動くなら別に悪くはないだろ。
0542名前は開発中のものです。
2006/11/24(金) 14:23:18ID:iUdHJWUG0543名前は開発中のものです。
2006/11/24(金) 14:37:26ID:+XQbViM4別に悪いとかじゃないです
そのほうが楽でスクリプトも軽い、というのは俺の勝手な考えですから
でもゴリゴリ自動変換出力したものを
>うちのノベルもシナリオ100kbでスクリプト1MB越える。
>想像出来ないは言いすぎでは。大体セリフ一つで20行くらい使ってる。
ってのはちょっと特別な例じゃないかなと思ったんで
0544名前は開発中のものです。
2006/11/24(金) 14:45:11ID:TjxVNix6普通の事みたいに言ってたが、
普通はマクロ使うからな
0545名前は開発中のものです。
2006/11/24(金) 20:08:10ID:+NBL0PUg楽かどうかでいったらマクロは書くのにも直すのにも変換プログラムと
マクロスクリプトを弄らないといけなくなるから楽じゃないんだよ。
「想像出来ない」は言いすぎって思っただけで誰もがやってるとか
そんな事言う気は無いよ。
0546名前は開発中のものです。
2006/11/24(金) 20:43:29ID:6yVg3CqMスクリプトがデカイ分、読み込む速度とメモリ使用量には影響出るだろうけど
実行速度は問題ないだろうし、作業量が増えるばかりか
エンバグ何てことになったら目も当てられない。
0547名前は開発中のものです。
2006/11/24(金) 21:32:31ID:zTdWva/D>マクロスクリプトを弄らないといけなくなるから
どんだけ糞なマクロ書いてるんだよwww
0548名前は開発中のものです。
2006/11/24(金) 21:52:42ID:PYa7x5ip0549名前は開発中のものです。
2006/11/24(金) 21:59:48ID:JvYhHSpJだから俺はマクロ専用シナリオファイル作って
first.ksの先頭で読ませてる。
ともあれマクロ使うのにも実行する処理の理論的理解や
何処をどう弄ればシンプルになり、共同の処理に出来るか
とか、結構お勉強通りの数学だけじゃなくて
発想力がいるよね。
絵に挫折してプログラムに走ったけど
最終的に必要な創造力は変わらなくて大変だった。
最後に表現するのが絵か計算かの違いだけでプログラマーもクリエイターなんだと思ったよ。
0550名前は開発中のものです。
2006/11/24(金) 22:00:19ID:zTdWva/D0551名前は開発中のものです。
2006/11/24(金) 22:37:17ID:KLLk3f6N>>523
>TJSはKAGの機能と言うよりプログラムそのものですから
まあ確かにC++の生成物のプログラミング言語だ
>JAVAやVISUALBASIC.NET、C++並のオブジェクト指向プログラムの
>基礎が解ってないと弄ることもままならないと思います。
TJSはJSを元にしている。javaやC++にはラムダ式や無名関数やなどが無い
それとTJSのクロージャやcontextof演算子はJS風のクロージャとコンテキストチェーンが理解してないと難しい
contextof演算子なんかはJSやってないとリフレクトしている様にしか見えないと思う
C++はオブジェクト志向にくっついてくるポリモーフィズムやカプセル化なんかをサポートしたに過ぎない
話がずれるがC++な人間にY Combinatorの美しさは理解できないと思う
>一応文字の容量としては
>半角文字1文字が1バイト、全角文字1文字が2バイトの計算になりますね。
utf-8とかutf-16とかたまにで良いので思い出してあげて下さい。
>あとフォルダからのプロパティーでの容量表示ですが
>クラスタサイズが64KBとかで大きいと
テキストで150Mもあったらクラスタの問題じゃない
まあ煽ってるわけじゃないんだ。自分が何やってるかも分かってない奴に許容量以上の情報を流し込んだら暴走するんジャマイカ?
と言いたいんだ。
0552名前は開発中のものです。
2006/11/24(金) 22:55:19ID:TjxVNix60553名前は開発中のものです。
2006/11/24(金) 22:58:08ID:phWCv1h7きもいよ、お前
0554名前は開発中のものです。
2006/11/25(土) 00:05:45ID:rAygKjkFKAGリファレンス>マクロの属性
これ見る限りだとmacro〜endmacroで定義後、どっかで展開されてるみたい
(プラグインなしで)マクロ中のラベルが機能しないってことは
使用時に展開してるんかな
0555名前は開発中のものです。
2006/11/25(土) 00:08:07ID:rAygKjkF0556名前は開発中のものです。
2006/11/25(土) 01:20:13ID:9uvhzlozちゃんと確認してないから知らないけど。
0557名前は開発中のものです。
2006/11/25(土) 14:07:57ID:Qzvv6D/KKAG→TJS→きりきり って変換されていくんだよね?確か。
まぁ俺も上に続いてあてずっぽうなわけだが。
0558名前は開発中のものです。
2006/11/25(土) 14:22:49ID:8SjtZ4nLマクロが糞でも上手くてもそこの作業工程はかわらんだろ。
0559名前は開発中のものです。
2006/11/25(土) 14:35:14ID:lW3306pr変更内容にもよるが、普通はマクロだけ弄ればいいように設計する。
絶対にどっちも弄らないと変更できないようなマクロはマクロのメリットが生きてない。
0560名前は開発中のものです。
2006/11/25(土) 15:43:15ID:8SjtZ4nL新規作成するときは絶対にどっちも触らないといけない。
変更も属性の追加とかだとやっぱりどっちも触らないといけない。
マクロの変更で属性の追加なんてそんなに特殊なケースでもないと思うけど。
0561名前は開発中のものです。
2006/11/25(土) 15:56:47ID:W0+AfxYV0562名前は開発中のものです。
2006/11/25(土) 16:41:29ID:F8vTiiqk0563名前は開発中のものです。
2006/11/25(土) 16:43:06ID:wWSEIqxM0565名前は開発中のものです。
2006/11/25(土) 20:44:10ID:/hiLFfxn領域アクション定義ファイルにexp="kag.close()";と書くと終了するのですが、
一瞬エラーメッセージ?が出てしまいます
(ポップアップは一瞬で消えるためどのようなメッセージが表示されているかは
確認できませんでした)。
クリッカブルマップを文字またはグラフィックボタンに変更して
linkタグやbuttonタグの後にexp="kag.close()"と記述すれば問題ありませんでしたが、
出来ればクリッカブルマップで実現したいので、
本件でエラーメッセージを出さずに終了する方法をご存知の方がいらっしゃいましたら教えていただけませんか。
0566名前は開発中のものです。
2006/11/25(土) 20:52:40ID:wWSEIqxM分からないなら少し頭使えばいいと思う
例えば
*end
@eval exp="kag.close();"
とか書いといてtarget="*exit"するとか
0567名前は開発中のものです。
2006/11/25(土) 20:54:15ID:wWSEIqxM×target="*exit"
○target="*end"
0568名前は開発中のものです。
2006/11/25(土) 21:37:00ID:/hiLFfxnアドバイスありがとうございます。
早速evalで試してみました。
現象は変わりませんでしたorz
別の部分に問題があるのかもしれませんのでもう少し調べてみます。
0569名前は開発中のものです。
2006/11/25(土) 21:37:35ID:/hiLFfxn21:28:47 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
21:28:47 title.ks : jumped to : *end
21:28:47 処理を開始します
21:28:47 title.ks : [eval exp="kag.close()"]
21:28:47 (info) Rebuilding Auto Path Table ...
21:28:47 (info) Total 181 file(s) found, 172 file(s) activated. (0ms)
21:28:47 YesNoDialog.tjs を読み込みました(16ms)
21:28:47 ButtonLayer.tjs を読み込みました(0ms)
21:28:48 ==== An exception occured at conductor.tjs(441)[(function) onTag], VM ip = 31 ====
21:28:48 -- Disassembled VM code --
21:28:48 #(441) lastTagName = tagname;
21:28:48 00000031 spd %-2.*2, %-4// *2 = (string)"lastTagName"
21:28:48 -- Register dump --
21:28:48 %-6=(int)0 %-5=(object)(object 0x01B0A220:0x01B05064) %-4=(string)"eval"
21:28:48 %-3=(object)(object 0x0322BF50:0x0322BF50)
21:28:48 %-2=(object)(object 0x0012F538:0x00000000)
21:28:48 %-1=(object)(object 0x0322B914:0x0322B914) %0=(void) %1=(int)0
21:28:48 %2=(object)(object 0x01B0A220:0x01B05064)
0570名前は開発中のものです。
2006/11/25(土) 21:38:44ID:/hiLFfxn21:28:48 オブジェクトはすでに無効化されています at conductor.tjs(441)[(function) onTag]
21:28:48 ==== An exception occured at conductor.tjs(175)[(function) timerCallback], VM ip = 651 ====
21:28:48 -- Disassembled VM code --
21:28:48 #(175) timer.enabled = false;
21:28:48 00000648 const %1, *30// *30 = (int)0
21:28:48 00000651 gpd %2, %-2.*44// *44 = (string)"timer"
21:28:48 -- Register dump --
21:28:48 %-5=(int)0 %-4=(object)(object 0x01ACFFA8:0x01ACFFA8)
21:28:48 %-3=(object)(object 0x0322BF50:0x0322BF50) %-2=(object)(object 0x0012FB14:0x00000000)
21:28:48 %-1=(object)(object 0x0322B914:0x0322B914) %0=(void) %1=(int)0 %2=(int)0 %3=(int)0
21:28:48 %4=(int)353752390 %5=(int)0 %6=(int)423 %7=(int)126 %8=(void)
21:28:48 %9=(object)(object 0x01851448:0x01851448)
21:28:48 -------------------------------------------------------------------------------------------
21:28:48 オブジェクトはすでに無効化されています at conductor.tjs(175)[(function) timerCallback]
21:28:48 スクリプトで例外が発生しました
オブジェクトはすでに無効化されています
21:28:48 trace : event
0571名前は開発中のものです。
2006/11/25(土) 21:55:57ID:/hiLFfxnなお吉里吉里に付属のマニュアルに下記のように書かれていました。
> kag.close と kag.shutdown
> kag.close は、KAG を終了させます。終了確認を行う設定にしている場合は終了確認があります。
> kag.shutdown も KAG を終了させますが、終了確認はありません。
> なお、終了に System.exit() を使用すると、システム変数が保存されずに終了される場合があるので使用しないでください。また、これらは eval タグの exp 属性では指定しないでください (代わりに close タグを使用してください)。
お手数をおかけしました。
0572名前は開発中のものです。
2006/11/25(土) 22:22:50ID:/Uaszx6jcloseタグが停車してギアをPにしてエンジンを切るという一連の流れをやってくれてると思っておけばいい
0573名前は開発中のものです。
2006/11/25(土) 23:42:53ID:wWSEIqxM正直、スマンカッタ
ソンナノスッカリワスレテタヨ
0574名前は開発中のものです。
2006/11/26(日) 00:19:05ID:mVKEmS2T分かりやすい例え、ありがとうございます。
心に留めておきます。
>>573
いえ、アドバイスいただきありがとうございます。
evalから調べる事が出来たので助かりました。
0575名前は開発中のものです。
2006/11/26(日) 03:01:03ID:tyyB8kNvオブジェクトはすでに無効化されているというエラーが出ます。
どこを直せばいいのか教えてください。
function onKey_GameResetStart(key, shift)
{
if(key == VK_R && (shift & ssAlt))
{
kag.goToStart();
}
}
kag.keyDownHook.add(onKey_GameResetStart);
0576名前は開発中のものです。
2006/11/26(日) 04:39:34ID:z28ORVy6if(key == VK_R && (shift & ssAlt)){ kag.goToStart(); return; }} incontextof this;
こうしても無理?
0577名前は開発中のものです。
2006/11/26(日) 11:53:36ID:tyyB8kNvいけました。ありがとう。
0578名前は開発中のものです。
2006/11/26(日) 21:46:03ID:jXmud19pレイヤを移動させても 改ページ?すると
元の場所にもどってしまうのです
初期位置をいじったり リファレンスを調べたのですが
どうしても解決できません
ヒントだけでも教えて貰えませんでしょうか。
0579578
2006/11/26(日) 22:31:57ID:jXmud19p既出っぽい質問してどうもすみません
昨日から吉里吉里始めた超初心者ですが
頑張ってゲーム作ろうと思います。
0580名前は開発中のものです。
2006/11/27(月) 00:56:41ID:g/+h1vM4しかしレイヤー座標の取得でつまづいています。
[emb]の箇所で正しい数値が確認できているのですが、
[move]の中では「0(undefined?)」として扱われてしまいます。
path=""の中では変数の展開は行われないのでしょうか?
---------------------
[macro name="fadeOut"]
[eval exp="_tmp.fadeLayer = kag.fore.layers[+mp.layer]"]
[emb exp="_tmp.fadeLayer.left"][l] ←ここでは正しい数値が出る
[move layer="&mp.layer" time="1000" path="('&_tmp.fadeLayer.left','&_tmp.fadeLayer.top',255) ('&_tmp.fadeLayer.left','&_tmp.fadeLayer.top',0)"]
[endmacro]
---------------------
0581名前は開発中のものです。
2006/11/27(月) 02:11:04ID:KB1E8Ixtつっこみどころが……あなたは多分、リファレンスの読み方が下手なのです。
1. &は属性の最初に置かないと意味がない。
2. ' で囲まれた範囲は文字列扱いになる。その中に変数名があっても、変数とは認識されない。
3. 文字列に付け足しをするときは + を使う。
4. [move]はレイヤを動かすタグ。フェードには通常[layopt]と[trans]を使う。
5. [move]のpathは一つでもOK。
あと、これは飽くまで好みだろうけど、その[move]のlayer属性は % や * でも行けるよね。
ところで、_tmp ってなんなんだろう? TJS詳しくないからわかんないんだけど……
それぞれ何か特殊な用途のために、あえてやってるんだとしたら、見当違いのつっこみは鼻で笑ってやってください。
0582名前は開発中のものです。
2006/11/27(月) 02:11:17ID:X6TNW4dS[move layer="&mp.layer" time="1000" path="&_tmp.fadeLayer.left+','+_tmp.fadeLayer.top+',255 '+_tmp.fadeLayer.left+','+_tmp.fadeLayer.top+',0'"]
これで動くかな
あと余計なお世話だったらすまん、
フェードアウトさせるだけなら前半のパスはいらないんじゃないか?
0583名前は開発中のものです。
2006/11/27(月) 02:17:06ID:X6TNW4dS何でこう被るかなorz
0584名前は開発中のものです。
2006/11/27(月) 03:09:17ID:UkxjZ0jQButtonLayer.tjs内にらんかさんのをコピペしてみました。
function onHitTest(x, y, process)
{
if(process)
{
// 右ボタンが押されていたときにイベントを透過
if(System.getKeyState(VK_RBUTTON))
super.onHitTest(x, y, false);
else
super.onHitTest(x, y, true);
}
}
これで正解ですか?
狙った動きはしてるんですが何か弊害が予想されるならご指摘頂けると有難いです。
知らない言回しが出ても調べますんでよろしくです。
0585名前は開発中のものです。
2006/11/27(月) 03:15:26ID:g/+h1vM4>>582
ありがとうございます。
大きなヒントと、今後の作業に必要な情報をいただきました。
[move layer="&mp.layer" time="1000" path="'('+&_tmp.fadeLayer.left+','+&_tmp.fadeLayer.top+',0)'"]
[move layer="&mp.layer" time="1000" path="(&_tmp.fadeLayer.left, &_tmp.fadeLayer.top, 0)'"]
どちらもダメだったので、下記のようにしたら動きました。
[eval exp="_tmp.path = '('+_tmp.fadeLayer.left+','+_tmp.fadeLayer.top+',0)'"]
[move layer="&mp.layer" time="1000" path="&_tmp.path"]
[trans]を使わない理由は、メッセージを表示とは非同期に透明度を変更したかったからです。
_tmp は 一時変数「tf」の代用として自分で用意した変数です。
ゲーム変数「f」やシステム変数「sf」などそうですが、いまいち名前からピンとこないので
var _systemVars = sf;
などとして使おうかと考えています。
連想配列などは参照渡しになるので、おそらく動作的には問題ないかなと思っています。
自分的にソースの見渡しがよくなりますし。
共同作業で…と考えると難があることは否めませんが。
0586名前は開発中のものです。
2006/11/27(月) 10:24:42ID:KB1E8Ixt属性というのは、例えば[move]における time や path のことです。
その値の最初に&がつかないとTJS式と認識してくれないのです。
とりあえず>>582さんの書き込みを良く解釈してみてください。
× path=" '(0,'+ &f.hoge +',0)'"
○ path="&'(0,'+ f.hoge +',0)'"
>メッセージを表示とは非同期に透明度を変更
ごめん、よくわからない。どういうこと?
[backlay][layopt layer="%layer" page="back" visible=false][trans method="crossfade" time="1000"]
では駄目なんだよね。
0587名前は開発中のものです。
2006/11/27(月) 12:54:16ID:tT+3k7ui0588名前は開発中のものです。
2006/11/27(月) 18:01:07ID:nSKCFRRiなにも問題ないと思うよ
0589名前は開発中のものです。
2006/11/27(月) 19:24:31ID:KB1E8Ixttransでフェードアウトしながらでも、文字表示はできるでしょ?
なんか俺勘違いしてる? う〜ん……
あっ、でもフェードにmoveを使う状況がひとつ思いついた。
複数のレイヤを同時にフェードさせる場合だ。
0590名前は開発中のものです。
2006/11/27(月) 22:59:53ID:g/+h1vM4&の使い方がやっと理解できました。ありがとうございます。
「変数を展開するための識別子」ではなく、ある意味 ActionScriptなどの eval()なのですね。
>>589
>>587さんのおっしゃるように、フェードアウトさせながら文字を表示させようとしています。
「文字を表示したまま」フェードはtransでもできますが、
「文字を表示しながら」フェードはmoveでないと出来ないという理解でしたが、
もしわたしの勘違いでしたらすいません。
[freeimage layer=0 page="back"]
[trans layer=0 method="crossfade" time=500] ←前景のみのフェード
だと、前景のイメージサイズが合わないため trans自体が実行出来ず、
[backlay]
[freeimage layer=0 page="back"]
[trans method="crossfade" time=500] ←全体のフェード
だと文字を表示させながらが出来ませんでした。
0591名前は開発中のものです。
2006/11/27(月) 23:01:53ID:eu6sQf9Qコントロールの長押しでのみスキップ出来る方法を探しています。
ttp://www.kirikiri.info/bbslog/log/index30.html#006109
6109と6110のやりとりが自分の求めている内容だと思うのですが
6110での回答が具体的にどうすればよいのか分かりません。
0592名前は開発中のものです。
2006/11/27(月) 23:02:36ID:g/+h1vM4KAGの[if]では if〜else〜 や if〜else if〜else
のようなことが出来ないようですが、
皆さんが上記のような分岐をするときはどのように記述していますか?
0593591
2006/11/27(月) 23:03:26ID:eu6sQf9Q@iscript
kag.checkProceedingKey = function(key, shift)
{
if(key == VK_RETURN || key == VK_SPACE)
{
if(skipKeyRepressed) return false;
skipKeyRepressed = true;
onPrimaryClickByKey();
return true;
}
return false;
};
kag.onKeyUp = function(key, shift)
{
if(key == VK_RETURN || key == VK_SPACE)
skipKeyRepressed = false;
};
@endscript
0594591
2006/11/27(月) 23:04:11ID:eu6sQf9Q@iscript
kag.checkProceedingKey = function(key, shift)
{
if(key == VK_CONTROL)
{
if(skipKeyRepressed) return false;
skipKeyRepressed = false;
onPrimaryClickByKey();
return true;
}
return false;
};
kag.onKeyUp = function(key, shift)
{
if(key == VK_CONTROL)
skipKeyRepressed = false;
};
@endscript
これを一つにまとめるというのは可能でしょうか?
0595名前は開発中のものです。
2006/11/28(火) 00:29:44ID:rz9M3VhYif(e1){b1}
else if(e2){b2}
else{b3}
↓↓
[if exp="e1"]b1[endif]
[if exp="!e1 && e2"]b2[endif]
[if exp="!e1 && !e2"]b3[endif]
or
[if exp="e1"]b1[jump target="*L"][endif]
[if exp="e2"]b2[jump target="*L"][endif]
b3
*L
0596595
2006/11/28(火) 00:40:03ID:rz9M3VhY↓↓
[if exp="e1"]
b1
[elsif exp="e2"]
b2
[else]
b3
[endif]
0597名前は開発中のものです。
2006/11/28(火) 00:44:44ID:rz9M3VhY@iscript
kag.checkProceedingKey = function(key, shift)
{
if(key == VK_RETURN || key == VK_SPACE)
{
if(skipKeyRepressed) return false;
skipKeyRepressed = true;
onPrimaryClickByKey();
return true;
}
else if(key == VK_CONTROL)
{
if(skipKeyRepressed) return false;
skipKeyRepressed = false;
onPrimaryClickByKey();
return true;
}
return false;
};
kag.onKeyUp = function(key, shift)
{
if(key == VK_RETURN || key == VK_SPACE || key == VK_CONTROL)
skipKeyRepressed = false;
};
@endscript
単純にまとめるとこうなるはず
0598名前は開発中のものです。
2006/11/28(火) 00:51:35ID:uNcRlZbYelse、elsifは2.27から。つまり安定版には非実装。
0599名前は開発中のものです。
2006/11/28(火) 01:55:03ID:BVthwIZJ総勢立ちキャラ9人、主人公、表情結構多め(一人当たり10枚前後)
で作りたいと思います。
それで、ちょっと作っていて思ったのですが、
ファイルサイズを1人一つの表情につきどれ位に収めたほうがいいか知らず、
何か不安になってきました。
初めての制作なので、一歩一歩手探りなのですが、
配布を視野に入れるならファイルサイズはどの程度に収めたほうがいいでしょうか。
0600名前は開発中のものです。
2006/11/28(火) 02:32:49ID:yrb7qqAX老婆心から言うと処女作でキャラ9人はまず完成しない。
登場人物は主人公入れて5人以内にしなさい。
0601名前は開発中のものです。
2006/11/28(火) 02:38:50ID:5LpO0KCb0602名前は開発中のものです。
2006/11/28(火) 02:44:39ID:6YMYZUJi0603名前は開発中のものです。
2006/11/28(火) 02:49:48ID:BVthwIZJえ?なんでですか?
ちなみにそのうち4人〜5人はただの脇キャラです。表情3・4こ。
0604名前は開発中のものです。
2006/11/28(火) 03:14:21ID:qnmHTZO+9人ということは脇であるとしてもそれなりの量になるよね?
それぞれに主人公あるいはメインキャラが絡むわけだし。
>599のような質問するようでは制作になれてないんだから、
慣らしの意味で最初はもっと規模を小さくした方が良いって事だと思うよ。
免許とりたてがカーレースに出ようとしてる感じがする。
0605名前は開発中のものです。
2006/11/28(火) 03:28:09ID:MgZBSp0gありがとうございます。else、elsifは安定版ではまだ未実装なのですね。
>>595を参考に、下記の方法でいきたいと思います。
[macro name="myMacroA"]
[myMacroX coud="mp.mode=='X'" param="&mp.param"]
[myMacroY coud="mp.mode=='Y'" param="&mp.param"]
[endmacro]
なぜ[jump]じゃないかというと、サブルーチンに引数を渡す方法が分からないからです。
サブルーチンは引数受け取れないのですよね?
0607584
2006/11/28(火) 03:42:11ID:ont2w1QSフェードアウトするレイヤの裏に透明な同サイズの画像を用意して読み込んでから
transでは?生理的に許せませんか?俺はそうしてますけど。
指定レイヤの反対側に透明画像を作ってゴニョゴニョ〜ていうプラグインを
作れば格好が良いかもですが、とうの昔ににありそうな予感。
初めて一ヶ月なもんで、言うことが力技で申し訳ない。
0608名前は開発中のものです。
2006/11/28(火) 04:00:50ID:qnmHTZO+文字出ながらフェードしようがプレイヤー的にはかなりどうでもいいよね。
ノーウェイトで進めちゃう人もわりと居るわけだし。
0610名前は開発中のものです。
2006/11/28(火) 17:44:46ID:U/Z/wvVF俺は10秒以上のスクロールやるときなんかにたまに使うかな>move
ttp://www.kirikiri.info/bbslog/log/000861
これ見るとそう邪道な方法でもないから、その辺は好みじゃないか
0611名前は開発中のものです。
2006/11/28(火) 18:01:17ID:F/hMEaPiKKDE重いから他のに乗り換えようかなあとか考えてるんだけど
0612名前は開発中のものです。
2006/11/28(火) 18:06:53ID:E7tdZZm10613名前は開発中のものです。
2006/11/28(火) 18:27:36ID:ont2w1QSPerl覚えたての頃に買った本の付録だった。
0614名前は開発中のものです。
2006/11/28(火) 18:54:25ID:rFcR1N1Tなんかのソフトと同時に立ち上げると、格段に重くなる。
ネトゲで回復休憩してる間にスクリプト打つかーと思っても
他のソフトはそれほどでもないのに、KKDE重くて立ち上げる気がしねえ。
0615名前は開発中のものです。
2006/11/28(火) 19:06:18ID:k11C1BXt私は最初はPeggy使ってたけど今はもうメモ帳です。
0616名前は開発中のものです。
2006/11/28(火) 19:50:52ID:GVUE4/oB0617名前は開発中のものです。
2006/11/28(火) 20:30:29ID:V6wGkQSa0618名前は開発中のものです。
2006/11/28(火) 20:58:52ID:d8ymiEdzまぁ、軽いし。
スクリプトは殆どマクロに入れちゃってるから、そう不便でもないかな。
それこそ好みだけどな。
0619名前は開発中のものです。
2006/11/28(火) 21:07:37ID:MgZBSp0g[button graphic="〜" exp="kag.onAutoModeMenuItemClick()"]
とやるところまではわかったのですが、ボタンを「押されたままの状態」にする方法がわかりません。
なにかよい方法はないでしょうか?
自分で kag.fore.messages[3].links[2].object.drawState(1); とやる方法も試してみましたが、
onMouseUpとonMouseLeaveによって戻されてしまいます。
0620名前は開発中のものです。
2006/11/28(火) 21:24:37ID:MgZBSp0gちょっと無理矢理ですが実現できました。
if( kag.autoModeMenuItem.checked ){
kag.fore.messages[3].links[2].object.loadImages(押された状態だけの画像);
次は「画面をクリックして自動モードを解除した時に、画像を戻す」
という部分に手を付けたいと思います。
0621名前は開発中のものです。
2006/11/28(火) 21:30:21ID:ont2w1QSON/OFF状態のボタンを別途用意して、押されたら
・モードの入れ替え
・ボタン画像の差し替え
を行うfunctionを[iscript]で書いてやる。ではいかがか?
先週あちこちみながらたどり着いた自分なりの解ですが。
0622名前は開発中のものです。
2006/11/28(火) 21:35:03ID:ont2w1QSおめでとさんです。なんだ、そこまで30分足らずでやれるなら余裕じゃないw
0623名前は開発中のものです。
2006/11/28(火) 21:41:34ID:XLedz8CG確かwikiに応用できそうなのが乗ってたな
0624名前は開発中のものです。
2006/11/28(火) 21:46:26ID:d8ymiEdzごめんorz
0625名前は開発中のものです。
2006/11/28(火) 23:59:14ID:2EllADKLttp://hpcgi1.nifty.com/gutchie/wifky/wifky.pl?p=%B3%E4%A4%C8%CE%A2%B5%BB%A4%C3%A4%DD%A4%A4%A4%E2%A4%CE#p2.3
0626名前は開発中のものです。
2006/11/29(水) 00:49:41ID:eQrLx8pHページは残ってるみたいだね
ttp://kirikiri.info/w/k/HandlerOnSkipCancel.html
0627名前は開発中のものです。
2006/11/29(水) 01:53:05ID:AK6LZMIx>>626
ありがとうございます。それをヒントに作ってみました。
長いので次の発言で。
行数制限のため行を切りつめてます。
読みにくくてすいません。
使うときはこんな感じに。
[button graphic="オフ時の画像" exp="kag.onAutoModeMenuItemClick()"]
[DaMenuItem_addButton id="0" type="auto" off="オフ時の画像" on="オン時の画像"]
id = 何個目のボタンか(0〜)
type = autoモードか、skipモードか。とりあえず今回は autoのみ
0628619
2006/11/29(水) 01:53:59ID:AK6LZMIxclass MyKAGWindow extends KAGWindow{
var _msgLayerId = 3; // ボタンがあるメッセージレイヤー番号
var _btnId = %[]; // ボタンID
var _imgOn = %[]; // オン時の画像
var _imgOff = %[]; // オフ時の画像
function MyKAGWindow(){ super.KAGWindow(); }
// 管理するボタンを追加
function _addButton( id, type, on, off ){
this._btnId[type] = id;
this._imgOn[type] = on;
this._imgOff[type] = off;
}
// 自動モード
function onAutoModeMenuItemClick(){
var btnId = this._btnId.auto;
super.onAutoModeMenuItemClick(); //元々のオートモード切り替え
if( this.autoMode ){
this.fore.messages[this._msgLayerId].links[btnId].object.loadImages(this._imgOn.auto);
}else{
this.fore.messages[this._msgLayerId].links[btnId].object.loadImages(this._imgOff.auto);
}
}
// 自動モード解除(onPrimaryClick()から直接呼ばれていたので、こっちも対応させる)
function cancelAutoMode(){
var btnId = this._btnId.auto;
super.cancelAutoMode(); //元々のオートモード終了
if( !this.autoMode ){this.fore.messages[this._msgLayerId].links[btnId].object.loadImages(this._imgOff.auto);}
}
}
global.kag = new MyKAGWindow();
0629619
2006/11/29(水) 02:18:15ID:AK6LZMIx〜 ? 〜 : 〜; も使えるんですね。
縮めてみました。
//////////////////////////////////
// 自動モード
function onAutoModeMenuItemClick(){
var btnObj = this.fore.messages[this._msgLayerId].links[this._btnId.auto].object;
super.onAutoModeMenuItemClick();
btnObj.loadImages( this.autoMode ? this._imgOn.auto : this._imgOff.auto );
}
//////////////////////////////////
// 自動モード解除
function cancelAutoMode(){
var btnObj = this.fore.messages[this._msgLayerId].links[this._btnId.auto].object;
super.cancelAutoMode();
if( !this.autoMode ){ btnObj.loadImages(this._imgOff.auto); }
}
0630名前は開発中のものです。
2006/11/29(水) 18:14:28ID:BqbxpFk+0631名前は開発中のものです。
2006/11/29(水) 21:24:29ID:t/WFJ9V5Window.innerLeft & Window.innerTop が無いみたいだけど
勝手にずらしても大丈夫なんだろうか。
0632名前は開発中のものです。
2006/11/30(木) 02:31:36ID:ypViXU95http://www.typemoon.com/tool/ngce.html
本家に報告あった奴
>プレゼントは某ビーチバレーゲーム。
ここは敢えてセクシービーチ3だろw
それかDOAX2とSB3と韓国のアレのエロバレートリオ
■ このスレッドは過去ログ倉庫に格納されています