[過去ログ] Delphiゲームプログラミング相談室 (976レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
647: 名前は開発中のものです。 [sage] 05/01/06 19:06:56 ID:aURBdGiO(1) AAS
>>640メーリングリストはリンク古いからこっちで
GamDevPukiWiki - Delphiまとめ/ダウンロード
外部リンク:gamdev.org
648(3): 名前は開発中のものです。 [] 05/01/11 01:53:33 ID:emWhx/Bt(1) AAS
RPGの戦闘やADV等で、「何かキーが押されるまで待つ」というのは、
どうやって実装したらよいのでしょうか?
ぐぐってはみたのですが、見つけられませんでした。
どなたかご教示お願いします。
649: 名前は開発中のものです。 [sage] 05/01/11 01:59:22 ID:pbbV+EYH(1) AAS
>>648
それくらい自分で設計できないと
ゲームは作れないと思いますが
650: 名前は開発中のものです。 [sage] 05/01/11 02:12:02 ID:YppJqvID(1) AAS
ネット上で見つからないわけがない
ぐぐりなおせ
651: 名前は開発中のものです。 [sage] 05/01/11 03:22:41 ID:0FZGm+nd(1) AAS
てか探さなくても少し考えればわかるだろうに…
652: 名前は開発中のものです。 [sage] 05/01/11 07:44:08 ID:wtbTBePd(1) AAS
キーボードバッファをポーリングするか、
キーボードバッファにウォッチドッグタイマーを設定すれば良い
653: 名前は開発中のものです。 [sage] 05/01/11 12:18:09 ID:ZBsK3Diu(1) AAS
キーだけで良いのなら、
・ グローバルな”キー待ち解除フラグ”を用意
・ キー待ち開始時に、"キー待ち解除フラグ"へfalseを代入
・ "キー待ち解除フラグ"がtrueになったら、次へ進む
・ OnKeyDown内で、"キー待ち解除フラグ"へtrueを代入
654: 名前は開発中のものです。 [sage] 05/01/11 13:37:08 ID:NRrdSaQ+(1) AAS
>>648
あとゲームなら、OnIdleでGetKeyState()とかかな?
655: 名前は開発中のものです。 [sage] 05/01/11 14:23:11 ID:0gcMffxM(1) AAS
>>648
var
keycode: byte;
begin
keycode:=0;
while GetKeyState(keycode) >= 0 do begin
Application.ProcessMessages;
Inc(keycode);
sleep(1);
end;
end;
656: 名前は開発中のものです。 [sage] 05/01/12 01:42:55 ID:FfNXGpEa(1) AAS
Application.ProcessMessagesを呼ぶなら、普通にOnKeyDownでいいと思う。
657(1): 名前は開発中のものです。 [sage] 05/01/17 12:32:17 ID:WK/WmwMg(1/2) AAS
QuadrupleDを利用して現在ゲーム製作中です
不明な点があるので質問させてください
画面に文字を書く場合のことです
現在はSxLib9のTSXTextWriterを利用してテクスチャを作っているのですが
マニュアルをみたところ複数行に対応していないように見受けられました。
一行ごとにテクスチャを用意するという方法で今はやっているのですが
よりよい方法がありましたらご教授ください
658(2): 名前は開発中のものです。 [sage] 05/01/17 15:10:07 ID:HVMOReOm(1/2) AAS
>>657
自分でクラス化する。
じゃないと、改行幅きめられんでしょ。
四角色指定でのグラデーションも全体にかかっちゃうし。
659(1): 名前は開発中のものです。 [sage] 05/01/17 17:00:44 ID:WK/WmwMg(2/2) AAS
>>658
いわれてみればまさにそのとおりです
SxLib9.pasを覗いて処理の内容は大まかに把握したので
自分でクラス化することにしました
ご回答どうもありがとうございました
660: 658 [sage] 05/01/17 22:48:27 ID:HVMOReOm(2/2) AAS
>>659
がんばってねー
661: 名前は開発中のものです。 [sage] 05/01/19 07:46:14 ID:QnLtZfZn(1) AAS
結論
理由
おまけ
662: 名前は開発中のものです。 [sage] 05/01/19 19:59:13 ID:X0qC9+o9(1/2) AAS
pascalとして既にある関数を自分でわざわざ作っている予感がして不安になるときが多々あります。
663(1): 名前は開発中のものです。 [sage] 05/01/19 22:30:12 ID:mwNqv6lU(1) AAS
あるある。最近だとTObjectListというものを発見した。
コンマとかセミコロンで区切った文字列を、TStringListなんかに分解する関数ってあるのかな?
もう作っちゃったわけだが。
664(1): 名前は開発中のものです。 [sage] 05/01/19 22:44:33 ID:rjaARbQN(1) AAS
>>663
TStrings.CommaTextで出来そうじゃね?
665: 名前は開発中のものです。 [sage] 05/01/19 23:50:57 ID:X0qC9+o9(2/2) AAS
誤爆してました
666(3): 名前は開発中のものです。 [sage] 05/01/20 19:35:18 ID:YEKSm85f(1) AAS
>664
レスありがd
でも”CommaText”は逆の働きで、TStringListの全行を、コンマ区切りの一行の文字列に統合する関数なのです
1対1で対応する、逆の機能を持つ関数がふつーはあるよね。でも見つからない
667: 名前は開発中のものです。 [sage] 05/01/20 20:06:25 ID:1UJPEd40(1) AAS
>>666
var
StringList: TStringList;
str: string;
i: Integer;
begin
str:='mona,giko,c';
StringList:=TStringList.Create;
try
StringList.CommaText:=str; //CommaTextへ代入すればOK
for i:=0 to StringList.Count-1 do begin
Memo1.Lines.Add(StringList[i]);
end;
finally
StringList.Free;
end
end;
668: 666 [sage] 05/01/23 00:16:42 ID:6Jup5Ydu(1) AAS
おおぉぉ、これはエレガント。いいもの見せてもらった、ありがとー!
try〜finallyで囲ってあるあたりがプロっぽいね
669: 名前は開発中のものです。 [sage] 05/01/23 00:56:34 ID:WKqPqKjy(1) AAS
Createの後にtry finallyは常識なわけだが
670: 名前は開発中のものです。 [sage] 05/01/23 13:23:11 ID:riZwaTYt(1) AAS
そうでもない。
絶対に例外が起きえないケースだったら
余分なコードを減らすためにあえて入れない事もあると思うが。
671: 名前は開発中のものです。 [sage] 05/01/23 13:57:32 ID:/T7uKEQD(1) AAS
どうせコンパイルしたら同じバイナリになるのになんでそんな手間をかけてまでソースを省く
上下前次1-新書関写板覧索設栞歴
あと 305 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.037s