トップページgamedev
1001コメント350KB

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

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

※スレで質問をするときは、ドキュメント、スレの過去ログ、公式掲示板のログ、
 FAQ、Google等で調べてからにしましょう。

前スレ(その11)
ttp://pc11.2ch.net/test/read.cgi/gamedev/1175480292/l50

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

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

詳しくは>>2-5辺りを参照のこと。
0754名前は開発中のものです。2007/11/01(木) 21:58:56ID:tp3JTwrl
>>753
kr2_228r2\kirikiri2\kr2doc\contents\index.html

Storages.extractStorageExt
機能/意味
ストレージ名の拡張子の抽出
タイプ
Storagesクラスのメソッド

構文
extractStorageExt(storage)

引数
storage  拡張子部分を抽出したいストレージ名を指定します。


戻り値
拡張子部分が返ります。拡張子部分は . (ドット)も含みます。拡張子が なかった場合は空文字列が返ります。
説明
 指定されたストレージ名から拡張子の部分を抽出して返します。

0755名前は開発中のものです。2007/11/01(木) 22:05:35ID:MND9wlQU
>>753
AnimationLayerを継承していればこんな感じでとれるはず。
Storages.extractStorageExt(kag.fore.layers[0].Anim_loadParams.storage)

Layerクラスにはファイル名を返すプロパティは無い。
0756名前は開発中のものです。2007/11/01(木) 22:12:17ID:a3uoTZCz
>>754-755
ストレージ名に拡張子は含まれてないんだ・・・
ファイル名から拡張子出す方法あるのかな?
AnimationLayerは継承してないからどうやってるか見てくるわ
0757名前は開発中のものです。2007/11/01(木) 23:29:30ID:fF+USWNw
2枚以上の画像を読み込んでいる場合はどれの拡張子が返ってほしいのかね
0758名前は開発中のものです。2007/11/02(金) 01:39:14ID:b0LkkDFz
無理に検知するならこんなん?処理的に無駄だから、用途を説明したほうがいいと思う。
function getExistImageName(storage) {
var exts = ["tlg6", "tlg5", "tlg", "eri", "png", "jif", "jpg", "jpeg", "dib", "bmp"];
for (var i=0;i<exts.count;i++) {
var ext = exts[i];
if (Storages.isExistentStorage(storage + "." + ext)) {
return ext;
}
}
return void;
}
0759名前は開発中のものです。2007/11/02(金) 21:50:19ID:hcCtuEW2
このスレって動作確認お願いすることっておkですか?
TJS初級者なんでちゃんと他のPCで動くかどうか自信がない・・・orz
もちソースは晒すので。
0760名前は開発中のものです。2007/11/02(金) 22:27:29ID:DioPvXDQ
>>759
うp
ついでにチ●コもうp
0761名前は開発中のものです。2007/11/02(金) 22:47:49ID:iavune3J
ソースの動作確認って意味無いだろ?
挙動が変わるわけ無いから
0762名前は開発中のものです。2007/11/02(金) 23:07:39ID:xHk82rrY
>>761
動作が変わらないのは当たり前。
バグってたら該当箇所のソース読めるんだから意味はあるに決まってるだろ。

まあソースの長さによっては
いちいち読む気が起きるかどうかはまた別の話だが・・・
0763名前は開発中のものです。2007/11/02(金) 23:15:19ID:xA4wrf5I
とりあえず暇だしうp
0764名前は開発中のものです。2007/11/02(金) 23:18:09ID:RTt6KXO1
動く動かないの確認など作成上の最前提だと思うのは俺だけか。
回数動かせば分かる、スキル以前にやる気の問題だろ。
動かない箇所、自分で解決出来ない不具合の質問に関してならばこういう場で答えることも出来ようが
デバグまでやらせるつもりか?
0765名前は開発中のものです。2007/11/02(金) 23:23:50ID:uESLnZIz
全くだな。どこまでレベル落ちていくのだか
07667592007/11/02(金) 23:44:36ID:kDsQi53o
把握。
自分のPCではちゃんと動くんで
他PCでもちゃんと動くと信じることにする。
0767名前は開発中のものです。2007/11/02(金) 23:47:23ID:jTPHHzgW
フルスクリーン使わなきゃ、大体動作するんじゃないすか?
0768名前は開発中のものです。2007/11/02(金) 23:50:53ID:eBBkD3Tu
個人的には、晒してくれた方が暇つぶしできたのだがな。
0769名前は開発中のものです。2007/11/03(土) 00:00:21ID:jyyyr4YL
まあ正直、やる気の問題だけでバグが消えてくれるんなら
吉里吉里本体にバグなんてないよ
0770名前は開発中のものです。2007/11/03(土) 00:12:24ID:dT6JVAzO
ソースの動作確認丸投げがやる気があるのかと
0771名前は開発中のものです。2007/11/03(土) 00:22:30ID:dFTXQD1G
暇でやる気をもてあましてる俺には好都合
ネガるだけの馬鹿はほっといて晒すんだ
0772名前は開発中のものです。2007/11/03(土) 00:28:45ID:jyyyr4YL
>>770
いや、自分のPCではちゃんと動いてんでしょ?
他人の環境での動作確認なんて他人にやってもらうしかないじゃん
ていうかそんなこと俺に絡まれても困るんだがw

どうでもいいけどいちいちageんな
0773名前は開発中のものです。2007/11/03(土) 00:41:46ID:aM2+a5O/
TJSのソースなら煽りは気にせずうp
KAGのソースなら要らないから消えていい
0774名前は開発中のものです。2007/11/03(土) 00:54:52ID:CmJ3HKkQ
KAGでもおもしろい使い方してるなら見る価値はあるな。
貪欲になんでも覗いていく姿勢がないとあかんぜ
なによりこんな過疎スレでえり好みするほど書き込みないだろ
0775名前は開発中のものです。2007/11/03(土) 01:42:39ID:1UnjqKIs
TJSの動作って環境依存あるの?メモリやらCPUやらPC性能は別として。
0776名前は開発中のものです。2007/11/03(土) 01:53:45ID:OhKKW7fe
>>775
粘着自演か。ネガ消えろよ
煽るしかない馬鹿はほっといてうpうp
0777名前は開発中のものです。2007/11/03(土) 02:13:00ID:1UnjqKIs
ただの質問だが・・・。
何この空気。
0778名前は開発中のものです。2007/11/03(土) 02:14:16ID:HURa8k0o
>>776
>>775は別にそういうんじゃないだろ。

ところで逆に環境依存が全く無いプログラムってあるのかな?
0779名前は開発中のものです。2007/11/03(土) 05:40:41ID:Ney/U+rE
>>778
それは当然あるだろ。
0780名前は開発中のものです。2007/11/03(土) 06:07:12ID:xDT0hvHr
あまりこのスレが技術関係で使われることって割合的に少ないから
雑談交えてソース晒すのは有意義なんじゃないかな
0781名前は開発中のものです。2007/11/03(土) 10:04:51ID:x+8lqafS
http://www.famitsu.com/blog/tkool/images/00038.jpg
ファミ通がエロゲツクール出すよー
0782名前は開発中のものです。2007/11/03(土) 11:41:21ID:AM60hGLp
自宅警備ってなんだよ
0783名前は開発中のものです。2007/11/03(土) 11:47:50ID:0hkiKVSX
>>781
RPGツクールでエロRPGという発想は既にあるし同人で出ているじゃんw

>>782
自宅警備員:何らかの教育機関・訓練学校に行っているわけでもなく、就職活動もしていない無職の若者をそれっぽく言い直したもの
0784名前は開発中のものです。2007/11/03(土) 14:03:30ID:lj33gMxS
>>724作り直してるんだがRPGやらんからどんな機能いるかわからん・・・
とりあえずキャラに話しかけたり出来ればいいのか?
0785名前は開発中のものです。2007/11/03(土) 14:07:53ID:WZWlrrjY
RPGやらんのに作ってみようとかチャレンジャーだな
適当なフリーのツクール製RPGでもやってみればいいんじゃないかな
0786名前は開発中のものです。2007/11/03(土) 14:17:37ID:lj33gMxS
>>785
ちょっと暇だったんだよ
とりあえず何かやってきてみるぜ
0787名前は開発中のものです。2007/11/03(土) 14:35:24ID:/DdG+EDK
>>759
見たいので早くうpしてよ

>>786
頑張れ。
っていうか、フレームワーク作るんなら
KAGそのものを書き換えた方がいいんじゃないか?
あとマップは一枚画像で表示するんじゃなくて、
チップの組み合わせで表示するようにしないと大マップに耐えられないよ。
チップファイルの形式を例えばツクール2000用とかに固定しちゃって、
草原とかのチップは境界補完するようにもしないといけない。
0788名前は開発中のものです。2007/11/03(土) 14:46:09ID:B49P/vh4
最近のツクール
http://whitecafe.sakura.ne.jp/graches/gw_image/ss_32.jpg
http://whitecafe.sakura.ne.jp/graches/gw_image/btl_tre_02.gif
http://whitecafe.sakura.ne.jp/graches/gw_image/ss_34.jpg
http://whitecafe.sakura.ne.jp/graches/gw_image/ss_33.jpg
http://whitecafe.sakura.ne.jp/graches/gw_image/ss_14.jpg
http://whitecafe.sakura.ne.jp/graches/gw_image/ss_22.jpg
0789名前は開発中のものです。2007/11/03(土) 15:22:19ID:lj33gMxS
>>787
KAG作り直すくらいならむしろ吉里吉里使わないほうが・・・
マップの移動とかはやるが戦闘とかはKAGで勝手に作れって感じなんで
マップをチップファイルで表示ってのは何とかしたいと思います
0790名前は開発中のものです。2007/11/03(土) 20:00:44ID:8KHH80ds
>>788
PS2辺りで出ても違和感ない出来だねぇ。
0791名前は開発中のものです。2007/11/03(土) 20:29:40ID:xDT0hvHr
マップチップを使うためには一つの画像に連結させる処理は必要だろ?
07927592007/11/03(土) 20:53:00ID:oxCPHqG6
TJSによるリストビューです。
動作確認もだけど、使い勝手が激しく微妙なので
ぜひ改善点など聞かせて欲しいです。

開発版v2.29以降で動作確認。

ttp://gamdev.org/up/img/10444.zip
0793名前は開発中のものです。2007/11/03(土) 21:06:38ID:lj33gMxS
>>792
デスクトップにあったdataフォルダ上書きされてちょっと冷や汗かいたぜw
0794名前は開発中のものです。2007/11/03(土) 21:55:41ID:WZWlrrjY
コンソールでスクリプトの挙動を見てると、こんな風に同じ行の命令が分裂してる事があるんですけど
これは何故なんでしょう?
勿論この画像のように、何行も同じタグは打っていません。
ttp://l.skr.jp/vip658233.jpg.html
0795名前は開発中のものです。2007/11/05(月) 08:44:53ID:gKzkDlRi
RPGとかでよく見かけるような、画面の上に載せる透過処理されたエフェクト
(炎とか爆発のムービー)
って吉里吉里でも使えますか?
0796名前は開発中のものです。2007/11/05(月) 13:51:59ID:pDxQCy9u
使えます。
0797名前は開発中のものです。2007/11/05(月) 21:19:09ID:yQX2hyhm
透過PNGってやつですな、俺もADVのメッセージフレームを半透明にしてます。
0798名前は開発中のものです。2007/11/05(月) 21:36:07ID:YzaNQYeP
どちらにしろ俺には絵がかけないw
0799名前は開発中のものです。2007/11/05(月) 21:59:48ID:5bPqSYiF
メッセージフレームはジャマ
0800名前は開発中のものです。2007/11/05(月) 22:12:17ID:aOYTMf2V
右クリックで消えます
0801名前は開発中のものです。2007/11/05(月) 22:51:55ID:5bPqSYiF
なのでメッセージフレームの不透明度は0
0802名前は開発中のものです。2007/11/05(月) 22:57:35ID:OkqxI94J
それだと読み辛いじゃん
0803名前は開発中のものです。2007/11/06(火) 00:14:49ID:0SlQ0x4o
そろそろCG画面と文章画面を分けてもいいんじゃね
0804名前は開発中のものです。2007/11/06(火) 01:42:11ID:Z/z7ounb
メッセージフレーム分を追加して(800×600)なら(800×700)にするか
「ヘルプ>このソフトについて」で出る新規ウィンドウを改造してメッセージ表示領域に改造?

メインとサブ画面の同期取るのが面倒臭そうだ。
0805名前は開発中のものです。2007/11/06(火) 01:46:17ID:Jq7bEOlH
普通に4:3画面で16:9表示にすればいいんじゃね?
上下余るし。
0806名前は開発中のものです。2007/11/06(火) 02:49:16ID:Y3BLgNVo
画面一杯の画像表示の要求に応えてのメッセージフレーム発生じゃないの?
むしろ時代逆行してないか。
0807名前は開発中のものです。2007/11/06(火) 14:08:44ID:YRXYrhRk
moveタグのpathの座標を、変数の値で指定する事は出来ませんか?
0808名前は開発中のものです。2007/11/06(火) 16:06:53ID:hrO7FnuX
>>807
ttp://www.kirikiri.info/bbslog/log/004941
0809名前は開発中のものです。2007/11/06(火) 16:13:50ID:YRXYrhRk
ありがとうございます、失礼しました
0810名前は開発中のものです。2007/11/06(火) 19:22:08ID:X/ReTW56
playbgmでBGMを設定。
playseで効果音を設定していたらplaybgmの音量が小さくplayseの音量は普通。
Config.tjsを入れ替えたら今度は逆になった。
どこが問題なのか教えてくれ。
0811名前は開発中のものです。2007/11/06(火) 19:57:13ID:xGznu//O
playbgmって再生命令だろ。なにをどう設定したんだよ
0812名前は開発中のものです。2007/11/06(火) 20:13:05ID:Q00V1Uye
こんばんわー。
TJSからメッセージレイヤの位置と色を変更するにはどうすればいい
んですか?

; ↓メッセージレイヤ0番を赤くします。
[position layer=message0 page=fore frame="" color=0xff0000
opacity=128 visible=true]
レフト、トップ、カラーを変更します。[l][r]
[iscript]
kag.current.left = 200; // ←変わらない。
kag.current.top = 200; // ←変わらない。
kag.current.frameColor = 0x0000ff; // ←変わらない。
[endscript]

kag.currentの部分をkag.fore.message[0]にすると、レフトとトップは
変わるのですが、カラーは変わりません。
自分としてもカレントの変え方が知りたいです。
0813名前は開発中のものです。2007/11/06(火) 20:25:25ID:tUyZ0FHh
>>812
kag.tagHandlers.position(%[left => "200", top => "200", color => "0x0000ff"]);
08148132007/11/06(火) 20:31:57ID:tUyZ0FHh
ちょい訂正
kag.tagHandlers.position(%["left" => "200", "top" => "200", "color" => "0x0000ff"]);
0815名前は開発中のものです。2007/11/06(火) 20:33:11ID:Q00V1Uye
>>813
タグハンドラーズ・・・、初めてみた用語です。
Mainwindow.tjsなどを見てはいたのですが、全く分かりませんでした。
やはりこの掲示板の方はすごいです。
ありがとうございました。非常に助かりました。
0816名前は開発中のものです。2007/11/06(火) 21:49:51ID:nizsahZ0
何か萌えたwwwww
0817名前は開発中のものです。2007/11/06(火) 22:45:56ID:rrqmaIl/
>>810
ボリュームコントロールを確認しろ
ソフトシンセとWaveに差がありすぎるんじゃないのか?
0818名前は開発中のものです。2007/11/06(火) 23:16:42ID:kv/8I+Em
>>815
このスレのテンプレにある過去ログに
ほとんどの情報が載ってるからみんなそれを覚えているだけだお
0819名前は開発中のものです。2007/11/07(水) 00:40:29ID:mZZMdfqG
ここ数日>>808の過去ログで検索しようとすると
Internal Server Errorが出るんだが俺だけ?
0820名前は開発中のものです。2007/11/07(水) 00:41:50ID:s0zadEFS
>>819
>>559
0821名前は開発中のものです。2007/11/07(水) 01:15:26ID:mZZMdfqG
ありがとう。よくあることで、しばらくしたら直るのかー。
ログは落としてるけどネットの方がなんとなく使いやすいんだよね。
0822名前は開発中のものです。2007/11/07(水) 01:17:50ID:1NJ8YCc8
・・・にしても質問レベル低いな。
そろそろ公式BBSにも勘違いコミケ房が大量発生しそうだな。
0823名前は開発中のものです。2007/11/07(水) 01:36:37ID:BadVcRgD
その低レベルな書き込みもどうかと思うぜ
0824名前は開発中のものです。2007/11/07(水) 08:03:50ID:RIkXDEaH
>>822
高レベルな質問には答えられないクセにw

0825名前は開発中のものです。2007/11/07(水) 09:08:52ID:dXwH05e7
別にいいんだよ。
質問レベルが低かろうと、吉里吉里自体の話をしているうちは。
これが、無意味な罵りあいや、コミュニティヲチに摩り替わった時にこのスレ終了だからな。

話ふってみるが、ついてて「こいつは便利だな」と思ったカスタム機能ある?
フローチャートとか。
0826名前は開発中のものです。2007/11/07(水) 13:40:33ID:YQaW3R/W
吉里吉里関係のwikiっていくつもあってややこしいんだが
すっきりしないもんかねぇ
0827名前は開発中のものです。2007/11/07(水) 18:07:05ID:RHqPd6Ze
>>825
カスタム機能ってなんだ?
0828名前は開発中のものです。2007/11/07(水) 19:00:02ID:qgVh0GCC
>>822
難しそうな話題は完全スルーなのに
よくそんなことが言えるもんだw
0829名前は開発中のものです。2007/11/07(水) 19:11:25ID:jf9t1XIi
>>827
ああすまん。KAGのテンプレートになくて、制作者が追加する機能のことを言いたかった。
クイックセーブ・ロードとか、フロチャとか、ロード時に今までの物語要約とか。
これが便利だった、とか、意外な機能とかあるかなって。
(制作物の総量からして、自分はノベル/ADV前提で話している)
0830名前は開発中のものです。2007/11/07(水) 19:38:20ID:stjhvnJH
TJSのkag.process('','')の命令は、KAGでいうjumpと同じ使い方でよいのでしょうか?
kag.processのあとにTJSの命令文があったら、続けてそのまま実行されてしまいますか?
0831名前は開発中のものです。2007/11/07(水) 21:23:29ID:7w0JKV8y
('','')<でっていうw
0832名前は開発中のものです。2007/11/08(木) 02:09:29ID:8Eg9y/Tw
>>830
>KAGでいうjumpと同じ使い方でよいのでしょうか?
 そう

>続けてそのまま実行されてしまいますか?
 そう
0833名前は開発中のものです。2007/11/08(木) 05:15:07ID:7x+CfWUB
KAG の構造と実行の概念を把握せずにとりあえずよびだしてみるやつが増えてるっぽいのは
悪い傾向かもなぁ。

KAG の機能をTJSから「正しく」呼びだす記述はこうだ。

kag.conductor.pendings.insert(0,%[tagname:"position", left:200, top:200, color:0x000000]);

直接 tagHandlers をよんでしまうと、状態変更するだけの処理はともかく、
待ち系の処理とかは適切には処理されない。タグを割り込ませる方法なら、
conductor 内部で直接処理されてしまう組み込みタグ以外のタグは、wait 系も
含めて普通にシナリオ中に記述したのと同等に動作する。

jump はその組み込みタグに該当しちゃうので、TJS から同等の処理を
したければ kag.process() を呼ぶのは正しいんだけどね
0834名前は開発中のものです。2007/11/08(木) 06:50:44ID:EtpCUXP/
>>833
わざわざ、それをするメリットってあるの?
0835名前は開発中のものです。2007/11/08(木) 07:40:23ID:T82sKTkF
それってどれ?
0836名前は開発中のものです。2007/11/08(木) 08:02:11ID:7x+CfWUB
>>834
この例だと全く無いね(笑) 上のほうであった tagHandlres の呼び出しも同様。

ifだらけでごちゃごちゃになってしまったような巨大マクロをメンテ
するよりは、この方法を使って TJS で書いたほうがすっきりするかも
しれない、ってぐらいかな。KAGの記法はふくざつなものには単純にむいてない。

// タグを追加するメソッドを kag に追加
kag.insertTag = function(n,name,elm) {
var e = %[];
(Dictionary.assign incontextof e)(elm, false) if elm !== void;
e.tagname = name if name !== void;
conductor.pendings.insert(n, e);
} incontextof kag;

// 内部で複雑なタグ組み合わせを実現する mytag を新規タグとして登録
// 同様の手法でマクロのノリでどんどんタグ拡張できる
kag.tagHandlers.mytag = function(elm) {
var n=0;
if (条件) {
insertTag(n++, "hoge", %[パラメータ]);
insertTag(n++, "hoge", %[パラメータ]);
.....
}
return 0;
} incontextof kag;


あとは、TJS 側で制御を握ってるあいだ、
[s] や [waittrigger] をつっこんで KAG 側の処理を任意の場所で止めておく、
といった使い方があるかな。
前者は kag.processGo() で、後者は kag.trigger() で再開できる。
0837名前は開発中のものです。2007/11/08(木) 09:14:13ID:8Eg9y/Tw
>>836
mytagの部分、わざわざそんな書き方しなくても、
kag.conductor.enqueueTag(%[tagname:"backlay"]);
return -4;
みたいな書き方でいいんでね?
0838名前は開発中のものです。2007/11/08(木) 13:28:51ID:7x+CfWUB
>>837
この方法を多用してると pendings にタグがたまった状態で処理が行われる
可能性があって、Conductor.enquetTag は後ろにたしちゃうので、そうすると
元のタグの順序が崩れてしまいます。
0839名前は開発中のものです。2007/11/08(木) 18:41:15ID:3FyDW20b
>>833
TJSでwaitってこれでかければ良かったのか
今までどうやったらいいか分からず、forで10000くらいループさせて無理矢理待たせるとかしかないのかと思ってた
0840名前は開発中のものです。2007/11/08(木) 19:03:51ID:6nBIAmq+
>>839
0841名前は開発中のものです。2007/11/08(木) 22:56:21ID:qiAlT766
吉里吉里の制作入門本にあった、Ctrlでメッセージスキップする機能なんですが、
押し続けていると、Ctrlから指を離しても未読部分もスキップする動作になってしまいます。
押している間だけ未読部分もスキップして、離された時は即時に
スキップを解除する、といった仕様にするにはどうしたら良いでしょうか?
0842名前は開発中のものです。2007/11/08(木) 23:37:39ID:6u9iKKUC
>>841
その本が何て本か分からないし、
スクリプトの記述がどうなっているか分からない以上、
回答のしようがない。

その機能のスクリプトを晒さないと、
どうにもならんですよ。
0843名前は開発中のものです。2007/11/09(金) 00:00:25ID:Ux4lfzpL
>>842
なるほど。あなたにはこの程度のこともムリだということは理解しました。

これはあくまでお願いなのですが、
他の有能な方の貴重なご意見が聞こえづらくなってしまいますので、
お静かにしていただけますでしょうか?
0844名前は開発中のものです。2007/11/09(金) 00:05:11ID:kwsEyx4K
新手の釣りか
08458412007/11/09(金) 00:09:29ID:Lcgn2ogJ
>>842
すみません、スクリプトを記述しようと思って本を読み返してみたら、
一箇所追加漏れ部分があったためにおかしな動作になってしまったようです。
お騒がせしました…
0846名前は開発中のものです。2007/11/09(金) 01:13:13ID:6pgBc5N3
>>841
http://gugurekasu.com/
0847名前は開発中のものです。2007/11/09(金) 01:56:57ID:7NBysa3j
>>,843
こーゆー勘違い質問者は公式サイトのBBSで聞け
0848名前は開発中のものです。2007/11/09(金) 01:58:46ID:zY9kdYuR
公式で聞いたとしても>842の答えがくるだろ
0849名前は開発中のものです。2007/11/09(金) 18:15:18ID:PNqDkJoj
elm.hogehoge に "boo"
g_test["boo"] に "foo"

が格納されてるとします。elm はある関数の辞書型の引数で、g_test は辞書型の外部変数とします。

1.
dm("g_test[" + elm.hogehoge + "] = " + g_test[elm.hogehoge]);
elm.poi = g_test[elm.hogehoge];
dm("elm.poi = " + elm.poi);

g_test[boo] = foo
elm.poi =

とデバッグ用のコンソールに出力されます(詳細に調べてみると、elm.poi は void のままでした)

2.
var woo = g_test[elm.hogehoge];
elm.poi = woo;
dm("elm.poi = " + elm.poi);

elm.poi = foo

とデバッグ用のコンソールに出力されます

どうしてなのでしょうか?
やりたいことは、単純に、

elm.poi = g_test[elm.hogehoge];

という代入がしたいだけなのですが。
ある場合において、2 .のように、一度別の変数に代入してからでなければ、
代入できないことがあったりするのでしょうか?
0850名前は開発中のものです。2007/11/09(金) 19:16:47ID:YRWJLiqW
>>849
普通に代入できたが俺の解釈間違ってるか?

var g_test = %[];
g_test["boo"] = "foo";

function func(elm) {
    Debug.message("g_test[" + elm.hogehoge + "] = " + g_test[elm.hogehoge]);
    elm.poi = g_test[elm.hogehoge];
    Debug.message("elm.poi = " + elm.poi);
}

func(%["hogehoge" => "boo"]);
0851名前は開発中のものです。2007/11/10(土) 01:44:10ID:ObYGbz68
あってます。

わざわざ、検証までしていただき、まことにありがとうございます。
わたくしのほうでも、そのように試しましたら、普通に代入できました。

現在、作成しているソース中において、
849 の 1. に該当するような部分を 2. のように書き換えると代入できたので、
どうしてなのだろう?と思ったからなんです

1.、2. は該当ソース中の変数名を置換しただけだったりします。
外部変数名が重なってないかどうかも、全ソースに対して検索をかけましたが、該当するものがありませんでしたし、
そもそも 1. を 2. に書き換えることで正しく代入されることが奇異に感じたのです。
1. と 2. の処理の結果は同等のはずではなかろうかと思ったのです。

どうすれば、このようなことが再現できるのか、どうしても分からなかったんです。
C で書いたときのように、プログラムがメモリを壊しちゃうことはないと思うので、
どうしても思いあたるフシがなかったんです。
0852名前は開発中のものです。2007/11/10(土) 02:15:06ID:R04XnpcA
>>851
その再現するコードを直接かいてもらわんことには、「ただの勘違いじゃ?」としか言えない
0853名前は開発中のものです。2007/11/10(土) 02:31:09ID:ObYGbz68
ある程度の規模のソースで、このような再現性の確からしさが確認できない場合、
どうすればいいんでしょうか?
なにを、どう、わたしが勘違いしてるのか分かりませんが
849 のとおりのことしかわたしはしてないわけですし
よく分からないですが、ありえないとおっしゃるなら、そうなのかもしれませんね

■ このスレッドは過去ログ倉庫に格納されています