- 1 名前:名前は開発中のものです。 [2007/11/02(金) 01:53:08 ID:M/fkomaJ]
- C++の勉強をかねてFCのドラクエっぽい感じのRPGを作りたいんです。
しょっぱなからつまずいています、知恵を貸してください。 <<使用しているもの>> BorlandC++ DXライブラリ ドラクエフォント DXライブラリはここ ttp://homepage2.nifty.com/natupaji/DxLib/index.html ドラクエフォントはここ ttp://slime4.hp.infoseek.co.jp/font/font.html
- 466 名前:名前は開発中のものです。 mailto:sage [2008/01/31(木) 18:54:57 ID:ZxMw62D0]
- >>465
だから、dxlib.dllはネイティブだと何度(ry
- 467 名前:名前は開発中のものです。 mailto:sage [2008/01/31(木) 22:23:51 ID:Qxg+Khni]
- >>452-466
お前らかっこ悪りぃwwww
- 468 名前:名前は開発中のものです。 mailto:sage [2008/02/01(金) 19:01:44 ID:eYKdS8Iu]
- 2008EEならPSDK付いてるだろ
同じ無料だし軽くなってるし
- 469 名前:名前は開発中のものです。 mailto:sage [2008/02/01(金) 19:19:54 ID:tyk5s2hE]
- 俺が初めにやったのはlibがRelease用なのにdebugでビルドしようとしたミスだ。
- 470 名前:名前は開発中のものです。 mailto:sage [2008/02/02(土) 09:02:14 ID:IBv7+ZuZ]
- >>449
>吐き出されたエラーの量に愕然…。 >しかも見たことないエラーだから対処法がわかんないOrz たぶん次プロジェクトで使おうとしても同じ部分でつまづくから 開発の合間に少しずつでいいから解決してみれ オレもこれを VC++2005 でビルドできるようにするまでに 色々な部分をイジったから 分かんねーことがあったら全部ここで聞いてみー あと、VC++2005 がアホだからかもしれんけど BattleCommands クラスの giveControl メソッド内に goto Spell; があるんだが、Useable.h の Spellクラスと混同されてるみたいで エラーになっている Field.cpp の380行目で 構文エラー : ';' が '}' の前にありません とか出てくるけど、 それ以前に Field クラスの iventProcess メソッドは 近いうちに何とかしといた方が良さそうだな
- 471 名前:名前は開発中のものです。 mailto:sage [2008/02/02(土) 14:00:18 ID:O0xDaWr+]
- gotoのラベルは全て大文字が基本だね
エラー処理以外で使うべきではないが…
- 472 名前:名前は開発中のものです。 [2008/02/02(土) 17:38:17 ID:I9mkDQj0]
- 4819と4996の警告を無視するようにオプション付けると少し幸せになるかもしれん。
VC++コンパイラが文字コードを知らないバグはゲイツも認識しているらしいが修正は次期リリースを待て、 とのことだったような気がしたが、ソースは無い。 というわけで、文字コード警告は無視。 atoiは時代遅れ、という警告も無視。 無視するのはいいが、全角文字みたいにマジで認識できない文字が入っていたとしても警告出ないので注意な。 ん? それだと警告じゃなくてエラーがちゃんと出るやもしれんが…。 どうでもいいが、コンパイラが文字コードを判別できないってアホすぎるだろ。
- 473 名前:名前は開発中のものです。 mailto:sage [2008/02/02(土) 17:39:12 ID:I9mkDQj0]
- おっとsage忘れたごめんよ。
- 474 名前:1 [2008/02/03(日) 01:37:14 ID:hMoICJCS]
- みんなありがとう ><
もうちょっとVCがんばってみるわ。 ちなみに、お察しの通り2005 Express Editionです。 gotoのラベルの文字衝突なんか 自力じゃ絶対わかんないって Orz 壁にぶつかったら質問しに来るね。 ほんとありがと。
- 475 名前:名前は開発中のものです。 mailto:sage [2008/02/03(日) 07:00:58 ID:NH1+l1Mk]
- Standard Editionの俺の足元にも及ばないぜ
- 476 名前:名前は開発中のものです。 mailto:sage [2008/02/03(日) 13:23:59 ID:FIiEId7l]
- >>474
2008でてるのに・・・
- 477 名前:1 [2008/02/04(月) 07:07:12 ID:RaDIAkOA]
- 2008か…
ダウソしてみる…
- 478 名前:名前は開発中のものです。 mailto:sage [2008/02/04(月) 12:10:13 ID:Cc7CMG8W]
- >>477
俺はVisual C++ 2008 Express Editionを使っている。 使用頻度は高くないが……。 Visual C++ 2005 Express Editionと違って、 設定しなくてもWin32プログラミングが出来るのが強みだ。
- 479 名前:名前は開発中のものです。 [2008/02/04(月) 20:36:01 ID:RaDIAkOA]
- 2008ダウソしたらVC++9.0 って書いてあったけど、 Vc++6.0 の2005と どっちのほうが使ってる人多い?
それともどっちでも関係ない? もしくは6.0で作っておけば9.0ならコンパイル通る?
- 480 名前:名前は開発中のものです。 mailto:sage [2008/02/04(月) 20:38:55 ID:teV1oW9H]
- VC2005は8.0だよ
- 481 名前:1 [2008/02/04(月) 23:04:12 ID:RaDIAkOA]
- とりあえず2008をダウソして使ってみたんですが、
DxLibのHPのガイドにそって設定を終わらせて、白い点を表示させるだけのプログラムは正常に動きました。 が、肝心のDQもどきのコンパイルは通らなかったです。 エラーメッセージはこんな感じです。 ------ ビルド開始: プロジェクト: test, 構成: Debug Win32 ------ コンパイルしています... CommandBattle.cpp リンクしています... .\Debug\BattleField.obj : fatal error LNK1107: ファイルが無効であるか、または壊れています: 0x23817 を読み取れません。 ビルドログは "file://c:\Documents and Settings\はかせ\My Documents\Visual Studio 2008\Projects\test\Debug\BuildLog.htm" に保存されました。 test - エラー 1、警告 0 ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ========== いろいろググって見たところ、リンカが上手く動いてないっぽい?
- 482 名前:名前は開発中のものです。 mailto:sage [2008/02/04(月) 23:22:27 ID:PaK1bp7B]
- VisualC++用 のライブラリ使ってる?
- 483 名前:名前は開発中のものです。 [2008/02/05(火) 01:30:29 ID:YbsfZF5u]
- >>482
ちゃんとVC用のを使ってます>< サンプルは一応動くんですよねぇ…。 ファイルの追加のやり方が間違ってる?
- 484 名前:名前は開発中のものです。 mailto:sage [2008/02/05(火) 01:54:57 ID:JnBm9OcX]
- >>1には悪いけどはかせでワロタ
- 485 名前:名前は開発中のものです。 mailto:sage [2008/02/05(火) 01:57:31 ID:c8iqtCfM]
- >>483
↓これはもう試した? プロジェクトのプロパティから、構成→全般 文字セットの欄 → 「マルチバイト文字セットを使用する」に変更
- 486 名前:名前は開発中のものです。 mailto:sage [2008/02/05(火) 12:53:15 ID:2IEJhn/E]
- >>483
リンク時のエラーということは文字セットの問題じゃないな。 Releaseモードでコンパイルしてみたらどうだ。 確か、俺はDebugモードではライブラリが入ってなくて 実行時にエラーになった覚えがある。 Releaseモードだとデバッガが使えなくなるのが難点だが。 あと、481のログは全部のソースファイルをビルドしたやつか? ソースファイルが1つのはずはないが……。 >ファイルの追加のやり方が間違ってる? どのように追加したのか詳しく説明してくれ。
- 487 名前:名前は開発中のものです。 mailto:sage [2008/02/05(火) 18:16:38 ID:Ehp9HBzC]
- >>485
それ2008からなくなったよ
- 488 名前:名前は開発中のものです。 mailto:sage [2008/02/05(火) 18:32:15 ID:tL3mZ0gl]
- >>487
あるじゃねーかww 釣られてしまった
- 489 名前:名前は開発中のものです。 mailto:sage [2008/02/05(火) 21:36:16 ID:YoGlW1vl]
- 流れ無視で書くけど致命的なエラーだからBattleField.objってのに
単純に出力されてないとかロックがかかっててアクセスできないとか リンカが想定してるobjではないとかそんな感じだとおも つーかLNK1107もちゃんとヘルプで確認しろよ
- 490 名前:1 [2008/02/06(水) 09:36:50 ID:q7r4U2fq]
- みんなありがとう
体調不良で早く寝て、朝起きて出かける前に少しいじって、出先から携帯カキコ。 LNK1107のエラーはBCCでコンパイルしたobjファイルを削除してからビルドしたら解決した。 >>489の言うとおりヘルプ見たら解決できた。 ググるだけで、ヘルプ見るって考えが無かったよ orz だけど、また違うエラーがでてきた。 家に帰ってからじっくりやってみる。
- 491 名前:1 [2008/02/07(木) 08:19:47 ID:+l6ry8aS]
- Useable.obj : error LNK2005:
"public: static char * global::c" (?c@global@@2PADA) は既に BattleField.obj で定義されています。 C:\Documents and Settings\はかせ\My Documents\Visual Studio 2008\Projects\test\Debug\test.exe : fatal error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました。 現状のエラーは上の感じです。LNK2005が205箇所でてます。 エラー内容はヘッダを複数回重複して読み込んでる、ってことみたいなんですが、 #ifndef _CHARACTER_H_ #define _CHARACTER_H_ 本体 #endif とやって回避したつもりでしたが、できてない様子。 ヘルプを見ると ヘッダに extern BOOL MyBool; cppソースに MyBool = false; と記述しろ、と書いてありましたが、記入すると error C2146: 構文エラー : ';' が、識別子 'MyBool' の前に必要です。 とエラーが出ます。 現状報告でした。
- 492 名前:名前は開発中のものです。 mailto:sage [2008/02/07(木) 08:37:14 ID:XCIeOzX/]
- #ifdef _MSC_VER
#define pragma once #endif /* _MSC_VER */ ヘッダの重複を避けるなら先頭に↑とでも書いておけば。
- 493 名前:名前は開発中のものです。 mailto:sage [2008/02/07(木) 08:37:58 ID:XCIeOzX/]
- #pragma once
だったorz
- 494 名前:名前は開発中のものです。 mailto:sage [2008/02/07(木) 11:11:53 ID:4ZyDT5RJ]
- >>491
> cppソースに > MyBool = false; > と記述しろ、と書いてありましたが、 cppの方でヘッダインクルードしてる? ってか、ソース晒したほうが早いような
- 495 名前:名前は開発中のものです。 mailto:sage [2008/02/07(木) 12:04:04 ID:QgLjGbkn]
- >エラー内容はヘッダを複数回重複して読み込んでる、ってことみたいなんですが、
>#ifndef _CHARACTER_H_ >#define _CHARACTER_H_ > >本体 > >#endif > >とやって回避したつもりでしたが、できてない様子。 これ(インクルードガードという)は全部のヘッダにやる必要があるぞ。 面倒だったら大抵のコンパイラが対応している #pragma once でも良い。 ヘッダファイルにグローバル変数の定義とか 記述していると重複するのでこんなエラーが出る。 >>491 > cppソースに > MyBool = false; > と記述しろ、と書いてありましたが、記入すると これはBOOL MyBool = false; の間違いじゃないか? 多分MyBoolの実体をcppソースに定義する必要があるはず。 >error C2146: 構文エラー : ';' が、識別子 'MyBool' の前に必要です。 >とエラーが出ます。 MyBool = false; の前には何がある? 多分読み込んでいるヘッダファイルの中身がおかしい。 このエラーだと;の抜けか?
- 496 名前:名前は開発中のものです。 mailto:sage [2008/02/07(木) 13:24:18 ID:/8kqxVw7]
- BOOLのtypedefしたヘッダ読んでないんだろうよ
あとBOOLはfalseじゃなくFALSEだな
- 497 名前:名前は開発中のものです。 mailto:sage [2008/02/07(木) 21:59:20 ID:tz5rxEMj]
- そういやー、Usable.h の
static int amount; static Item *itemList; に対する int ItemList::amount = 0; Item * ItemList::itemList = NULL; の部分は、上のと似たような理由でコメントアウトしたような気がするなー そもそも静的変数って 0 で自動的に初期化されるんだっけか?
- 498 名前:1 [2008/02/07(木) 23:31:34 ID:+l6ry8aS]
- コンパイルとおったぁぁぁああああああああああああああああ!
>>491のエラーの原因は ヘッダファイルで関数の中身を書いてたからみたいです。 たとえば //* const.h class global{ public: static char c[64]; static std::string msg; }; char * global::c = 0; std::string global::msg = ""; はダメで //* const.h class global{ public: static char c[64]; static std::string msg; }; //* const.cpp char * global::c = 0; std::string global::msg = ""; と、ファイルを分ければおk。 …仕様なのかな? ろだの調子が悪いみたいなので、あとでファイルあげます。 みんな本当にありがとう T◇T
- 499 名前:名前は開発中のものです。 mailto:sage [2008/02/08(金) 00:51:30 ID:8VOzPRyE]
- >>498
静的メンバ変数はグローバル変数と似たような扱いになる。 common.hにてグローバル変数g_varが存在し、a.cpp, b.cppがそれぞれincludeしているとする。 a.cppがコンパイルされる→a.objにg_varが存在する b.cppがコンパイルされる→b.objにg_varが存在する 最終的にリンクするときにg_varがバッティングする。
- 500 名前:名前は開発中のものです。 mailto:sage [2008/02/08(金) 01:11:45 ID:MoDyMZB7]
- 某ランドでは動くのにね
- 501 名前:名前は開発中のものです。 mailto:sage [2008/02/08(金) 11:48:47 ID:sAmmpMO4]
- >>498
> //* const.h > class global{ > public: > static char c[64]; > static std::string msg; > }; > > //* const.cpp > char * global::c = 0; > std::string global::msg = ""; こうではなくて、こちらが正しい。 //* const.h class global{ public: static char c[64]; static std::string msg; }; extern char * global::c; extern std::string global::msg; //* const.cpp char * global::c = 0; std::string global::msg = ""; つまり、ヘッダファイルに記述するのは 変数や関数、クラスの宣言であって、定義ではない。 これはBorland C++でも問題が出たと思うぞ。 多分Borland C++でコンパイルした時は複数のcppファイルで ヘッダファイルをインクルードしていなかったから問題が起こらなかったのだろう。
- 502 名前:名前は開発中のものです。 mailto:sage [2008/02/08(金) 12:50:49 ID:l8JQSvGp]
- >>501
デタラメ書くなよ コンパイルできないぞ あと配列をポインタに変換してexternさせると長さ失うからお勧めしない
- 503 名前:501 mailto:sage [2008/02/08(金) 13:15:21 ID:sAmmpMO4]
- >>502
すまん、間違えた。 クラスのstaticメンバだったんだな。 普通のグローバル変数と勘違いしていた。 クラス自体が宣言だ。 > extern char * global::c; > extern std::string global::msg; これはいらない。501で言ったことは忘れてくれ。 あと、確かに>>502の言うように //* const.cpp char global::c[64]; としたほうがいいな。 それで気づいたのだが、 char * global::c = 0; はバグだな……。 ここで配列の初期化はできないぞ。 しかもポインタで代入してるし……。 >>1にはコンストラクタを使えといっておく。
- 504 名前:名前は開発中のものです。 mailto:sage [2008/02/08(金) 22:54:29 ID:1LutvMl1]
- ぼ、ぼ、ぼくも、C++でゲーム作るんだお。
すーぱーマリおだお。 members2.tsukaeru.net/ogawa/gameprogu2.html さん、をつけて、ねっ。はずかしがりや、さんっ。 ぼ、ぼ、ぼくは、言語にふりまわされないんだからっ。えっへん、だお。 なんかー、言語名を冠につけるってはずかしいお。きゃっ。 すれちがっている。ミーンがすれちがっている。しゅーるだお。 ぼくね、IQ300なんだおって細君にいったら、絶対30だからっ!って言われたの。 1回転して、30になっちゃたんだね。って言ったら、ほんとに30だねって感心されたお。ぶぃっ! なにがいいたいかってーと、まぁ、言語に振り回されんなや、ゲームなんて、たかだか、数値と画面を 更新してるだけのもんだで。まじでそんだけ。ぷっ。だよな。むずかしいことなんて、ひとつもないぜ。 まぁ、頑張れや。ぼ、ぼくは、いま、がんばれ屋さんです。がんばれ、1。 あんまりにも言語に振り回されている様が、恥ずかしかったので、まぁ、書き込んでしまた。 ぼくのオーバードライアブ(波紋)が、伝わっただろうか。夕陽のオレンジのオーバードライアブ(覚醒の波紋(あの裏側が目覚める!))
- 505 名前:名前は開発中のものです。 mailto:sage [2008/02/09(土) 00:26:46 ID:41azRV47]
- C言語ぐらいわかってからゲーム作れよw
www.ascii.co.jp/books/books/detail/4-7561-1639-6.shtml オススメ
- 506 名前:名前は開発中のものです。 mailto:sage [2008/02/09(土) 00:35:32 ID:ucOS0Odn]
- pc11.2ch.net/test/read.cgi/gamedev/1034694683/
ここのオガワンってヤツだろ
- 507 名前:名前は開発中のものです。 mailto:sage [2008/02/09(土) 02:08:54 ID:uWdwi6vy]
- ホームページに自分の画像を載せてるけどナルシストなのかな?
members2.tsukaeru.net/ogawa/index.html
- 508 名前:名前は開発中のものです。 mailto:sage [2008/02/09(土) 02:17:17 ID:OEsnMtz3]
- >>504
あまりにも酷いソースでお茶噴いたww
- 509 名前:名前は開発中のものです。 mailto:sage [2008/02/09(土) 21:35:27 ID:vKTa7a8F]
- >>504
宣言わろた
- 510 名前:名前は開発中のものです。 mailto:sage [2008/02/10(日) 00:36:09 ID:Ze9YCxYS]
- >>504
> int TIME[3]; //基本的に、通番の変数は1番から使う。0番は無視。 クソワロタww
- 511 名前:名前は開発中のものです。 mailto:sage [2008/02/10(日) 07:51:48 ID:DQWHtX5v]
- using namespace std; //?
- 512 名前:1 [2008/02/11(月) 00:04:10 ID:vFv6OLzk]
- ろだの調子が悪いんじゃなくて、サイズオーバーでした Orz
VCに変えたとたんいきなり5倍くらいサイズが増えたみたいでびっくり。 コンパイル事態は通ったものの、会話するとエラーで落ちる。 どうやらhakase.hのStringクラスが悪さしてるみたいだけど、まだ原因の特定には至ってません。 IDEに慣れるまで少し時間はかかりそうだけど とりあえずデバッグ機能は使いこなせるようになりたいな。 tp://sakurachan.dip.jp/up/src/up9332.lzh
- 513 名前:名前は開発中のものです。 [2008/02/11(月) 02:35:47 ID:vFv6OLzk]
- あとなんか良く分からなくなってきたので質問なんですが
const.h class global{ public: static char c[64]; //これが宣言 }; const.cpp char global::c[64] = ""; //これが定義 でいいんですよね? ちなみにこのクラスはexternを知らなかったので 無理やりグローバル変数として使ってた。 グローバル変数って言っても、宣言無しで使いまわしてなるだけメモリを使わないように、って用途ですけど。 コンストラクタは一回も呼び出されないので、cppで定義しました。 もしクラスを生成するなら const.cpp char global::c[64]; global::global(){ c=""; } でいいのかな? でもコンストラクタが呼び出されるたびに初期化されちゃう?
- 514 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 04:10:20 ID:pgtIh2EL]
- 文字列と文字は違うからどちらもコンパイルできないよ
- 515 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 08:30:36 ID:aDsF8YDL]
- >>512
たぶん 拡張子 .ncb ってヤツが一番巨大だと思うんだけど、 .ncb は各々の環境で勝手に作られるから、配布時は不要っすね、 配布用からは消して圧縮すればいいよー。 あと、すごい昔から気になってたけど はかせって何よ?
- 516 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 14:28:47 ID:UBlSMgHv]
- 俺もそれが気になる。すげー気になるw>はかせ
- 517 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 14:37:13 ID:dALXccIV]
- >>481を見るとユーザ名みたいだけど
1の名前なのかな
- 518 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 14:50:42 ID:G+Qy0YvV]
- これからは>>1をはかせと呼ばせていただきます
- 519 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 20:01:42 ID:o0lcrIeV]
- NCBはインテリセンスのキーワードデータベースだな
STL使うと相当膨れる。
- 520 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 22:31:24 ID:ummcWhTi]
- 余計なファイルを作らせない設定ってないんですか?
- 521 名前:名前は開発中のものです。 mailto:sage [2008/02/11(月) 23:57:52 ID:HhQuAIPA]
- インテリ切れば?
- 522 名前:1 [2008/02/12(火) 00:22:15 ID:tLRoXqiP]
- はかせ は僕のあだ名です。
もっとも今もそうやって呼ぶ人はいなくなったけど、気に入ってるから使ってます。かたわれも同様。 本名ってのもアレだし。 >>512のエラーですがデストラクタで delete [] restr; をする時にエラーになってるっぽい。 危険だけどコメントアウトすると動くんだけどなんで? コンストラクタはそれぞれ引数に char* FILE* std::string を取る三種類しかなくて それぞれで char str[] と char restr[] を new してて strとrestrの配列は同じ長さをとってあるはずなのになんで? でも、まったく違うところが原因かも。
- 523 名前:名前は開発中のものです。 mailto:sage [2008/02/12(火) 00:28:40 ID:IKtCZVK3]
- >>520
ツール(&T)→オプション(&O)→テキストエディタ→C/C++→全般→入力候補 自動メンバ表示(&M) [OFF] パラメータヒント [OFF] →OK
- 524 名前:はかせ [2008/02/12(火) 01:22:27 ID:tLRoXqiP]
- バグの原因がわかりました。
Stringクラスを作る時の引数が、空の文字列だとエラーになるみたいです。 とりあえずMsgCmd::Draw() 側ではじくようにしたんですが 本来はStringの方で何らかの処理をすべきですよね。 さて、どうやって処理するのが一番いいんだろう? ゆっくり考えてみます。 さて、ようやく前に進めそうなのでモチベーションあがってきました! ↓とりあえず動くようにしたバージョン↓ tp://sakuratan.ddo.jp/uploader/source/date70346.lzh
- 525 名前:名前は開発中のものです。 mailto:sage [2008/02/12(火) 04:46:08 ID:XWB4jY1F]
- おー、久々にビルドしてみたら、スゴい進化してるではないか
ルーラとかまで実装されてんのな 画面上のウィンドウを生成するところは 装備ウィンドウやステータスウィンドウごとに力技で作ってるように見えるけど ウィンドウ生成部分は、もっと部品化していいんじゃないっすかね? 基本的に # とか % で長方形を作ってるだけっしょ? 難しいんかな?
- 526 名前:名前は開発中のものです。 mailto:sage [2008/02/12(火) 18:37:02 ID:oGlnsN82]
- 解凍した中のDebugフォルダの中のtest.exeクリックしたら、
「デバッグ」 「GameData\Useable\SpellList.csvが開けませんでした。」 が出て、プログラム終了してもプロセス残っててCPU100%になるんだけど、なんで? これこっちでVC入れてコンパイルしないと実行ファイル試せないの?
- 527 名前:名前は開発中のものです。 mailto:sage [2008/02/12(火) 19:09:02 ID:fyhPt8Zk]
- .\GameData\Useable\SpellList.csv
を用意してやれば
- 528 名前:はかせ [2008/02/13(水) 11:01:51 ID:husK91Sv]
- >>526
解凍したフォルダにdebugフォルダとGameDataフォルダがあると思います。 GameDataフォルダをdebugフォルダに入れてからtest.exeを起動するとできると思います。 プロセスが残ってる件は、これからやっつけます orz
- 529 名前:はかせ [2008/02/15(金) 08:08:59 ID:Vnl/Si0U]
- 城などの入り口の位置を修正しました。
大きい扉を実装しました。 移動中に【e】を押すとエンカウントを無効にできます。 tp://sakuratan.ddo.jp/uploader/source/date70703.lzh 岬の洞窟に入った時に二人目以降のグラがおかしいです。 原因は分かっているので、それを上手いこと修正したいと思います。
- 530 名前:名前は開発中のものです。 mailto:sage [2008/02/15(金) 09:04:54 ID:5vT1hdTU]
- インテリoffってどこの馬鹿だよ…
- 531 名前:名前は開発中のものです。 mailto:sage [2008/02/15(金) 19:41:30 ID:mWyYNOjz]
- 本人が余計なものと認識しているんだから仕方ない。
- 532 名前:名前は開発中のものです。 mailto:sage [2008/02/15(金) 19:53:52 ID:Rkucko5s]
- >>531
インテリ機能が邪魔なわけじゃなくて、.ncbを消したいだけなんだろ バッチ書くとかビルドイベントいじるとかいくらでも方法はあるだろうに・・・
- 533 名前:1 [2008/02/16(土) 02:56:55 ID:ArwSTL4u]
- ごめんなさい。インテリOffにした馬鹿です。
邪魔とかうざいとかそういうの以前に nbcがなんなのか、インテリセンスが何なのかまだ理解してないので その辺はご理解くださいませ。 がんばって勉強しなくちゃなー
- 534 名前:1 [2008/02/16(土) 03:58:26 ID:ArwSTL4u]
- マップ切り替え時の二人目以降のキャラクタの描写をなんとかしました。
リレミトを使うと落ちるバグを修正しました。 tp://sakuratan.ddo.jp/uploader/source/date70839.lzh まだVCになれない… Orz
- 535 名前:名前は開発中のものです。 mailto:sage [2008/02/16(土) 06:06:27 ID:CcpxY//e]
- ttp://homepage1.nifty.com/rucio/main/nyumon/nyumon5.htm
インテリセンスの機能はここに書いてある。 (C++の場合もうちょっとしょぼいけどw)
- 536 名前:1 [2008/02/16(土) 13:28:46 ID:ArwSTL4u]
- >>535
ありがとうございます。 たしかにこれ切ったら馬鹿って言われるなー Orz
- 537 名前:名前は開発中のものです。 [2008/02/16(土) 21:32:02 ID:CmBL2sVg]
- vsよりイクリプスの方がインテリ強くね?
- 538 名前:名前は開発中のものです。 mailto:sage [2008/02/17(日) 13:14:43 ID:aHSAdthd]
- VCに比べてCDTがショボいのは定説
WindowsアプリでVS使わない奴は頭湧いてる
- 539 名前:名前は開発中のものです。 mailto:sage [2008/02/17(日) 14:23:07 ID:Cg2VWlwZ]
- その辺の主張はム板でやればいいと思うよ
- 540 名前:名前は開発中のものです。 mailto:sage [2008/02/17(日) 17:20:33 ID:rRXJwyg0]
- ム板にも持ち込まなくて結構。マ板でやれ。
- 541 名前:名前は開発中のものです。 mailto:sage [2008/02/17(日) 21:35:01 ID:XOQbsCvL]
- 補完使ってると馬鹿になるよ。
- 542 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 00:28:07 ID:BBbqDL5F]
- ↑こういう奴に限ってコンパイル通らないソースをオープンソースのプロジェクトにコミットしたがるから困る
- 543 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 00:36:07 ID:08DD/JC7]
- 有名な哲学者も文字なんか使うと脳が退化するとか言ってたからねw
- 544 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 01:08:34 ID:vUYQTiug]
- 小説読まずに漫画ばかり見てると馬鹿になるとも言われてたなw
これについてだけは当たってなくもない気がするが
- 545 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 01:14:50 ID:UpTmLwcj]
- VCのインテリセンスはVBやVC#が神すぎるからしょぼく見えるんだよね
- 546 名前:1 [2008/02/20(水) 08:18:05 ID:V7ld5O9y]
- 現在新機能実装中なわけですが、作業が難航してます。
FieldMapのMapObj[i]をField.party->iventFlag[i]に対応させて表示/非表示を切り替えたかったのですが FieldMapクラスで表示/非表示を切り替えさせようと思ったけど check(PlayerParty *party) として引数にポインタを取るか あらかじめFieldMapクラスにポインタ変数を格納しておくか PlayerPartyクラスをグローバル化してしまうか 悩んでます。 どっちにしてもFieldMapクラスにPlayerPartyクラスをヘッダを読み込ませないとだめですよね?
- 547 名前:名前は開発中のものです。 mailto:sage [2008/02/20(水) 10:01:13 ID:eusdqHEV]
- iventじゃなくてeventにしたほうが
- 548 名前:名前は開発中のものです。 mailto:sage [2008/02/20(水) 18:18:28 ID:a8QXZ2ge]
- いくらイージス艦のレーダーが凄いからって
戦時でもないのに常に最高の警戒レベルで巡航していることなんか有り得ないわけで…
- 549 名前:名前は開発中のものです。 mailto:sage [2008/02/20(水) 18:24:11 ID:V7EDVY0P]
- そうは言ってもあれじゃ中国や朝鮮が船で攻めて来たら何もできずに沈められちゃうよ
- 550 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 02:26:57 ID:Wf5Zb2+X]
- 漁船と衝突してイージス艦が沈んだら面白かったのにw
- 551 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 04:48:12 ID:vbUxjJ5P]
- 最強の楯は殴るのにも最強でした
- 552 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 07:03:01 ID:R8XN2vkw]
- デュエル バスター ブリッツ
- 553 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 20:21:58 ID:fJ0DkPYJ]
- >>546
アクセサ書くってのはどうだい? ソース見てないから最適解かどうかは知らんが。
- 554 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 21:52:45 ID:iy0K8pSX]
- class PlayerParty;
class FieldMap { check(PlayerParty *party); いろいろ… }; でいいんじゃないか。
- 555 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 21:53:00 ID:0C4L3kC+]
- マップオブジェクトの表示制御に必要なのは
パーティ情報じゃなくて、イベントの状態なんだから わざわざパーティ情報の扱いを考慮するんじゃなくて フィールドマップはイベント情報だけ受け取るべきじゃね? そうでないと、 フィールドオブジェクトとパーティ情報の結合度が強くなり過ぎて ちょっと気持ち悪い感じがする (ドラクエだったら、パーティ情報 = フィールドの状態 で構わないかもしれないけどね・・・)
- 556 名前:1 [2008/02/21(木) 23:28:46 ID:9ZwlGJuJ]
- たしかに あんまり依存関係を強くしたくないのはありますね。
イメージ的にこうやってFieldクラスがFieldMapクラスとPlyartPartyクラスを見て仲介するようにしたかったのかも。 Field class ┌─────┴─────┐ PlayerParty class FieldMap class │ MapObject class ただしPlayerPartyクラスにイベントのフラグが入っていたため FieldMapの中にあるMapObjectクラスから、何番のフラグがたっているかは見えない、っていうのが問題でした。 こうなると Fieldクラスで if(PlayerParty.getIventFlag(FieldMap.MapObject.getEventFlag())){ //以下普通に処理 みたいな感じに処理するふうになるのかな?
- 557 名前:1 [2008/02/21(木) 23:29:37 ID:9ZwlGJuJ]
- あと
× ivent ○ event は、めっちゃ恥ずかしくて死にたくなった。
- 558 名前:名前は開発中のものです。 mailto:sage [2008/02/22(金) 00:45:22 ID:/6yYYp4N]
- ええー
- 559 名前:名前は開発中のものです。 mailto:sage [2008/02/22(金) 12:19:02 ID:gAchg6ey]
- >FieldMap.MapObject.getEventFlag()
POD型ではないのにpublicなメンバ変数があるのは変だと思う。 インスタンスの利用者が階層を深く掘るのが当たり前な実装はOOPじゃないし。 かといって、万能クラスを作るのもおかしい話だけど・・・ あとインスタンスがPascal記法ってどうなの? とここまで書いてからソース読んでみた。 いくら擬似コードでも実態とかけ離れすぎだろww publicになってないし、インスタンスは小文字始まりの名前になってるし・・・ むしろ気になったのは ・コンストラクタで初期化じゃなく代入をしてる ・あちこちにハードコーディングしてる ・継承しててもデストラクタがvirtualじゃない ・enumを使わず#define使ってる ・関数に対するコメントが無い(doxygenやxml code commentのような) ・ローカル変数にポインタか参照おけばいいのに"character[ci]->getDs()->"のような記述が沢山並んでいる ・あちこちで動的なメモリ確保を行っているにも関わらずスマートポインタを使っていない ・警告レベルが最大じゃない こういうところ
- 560 名前:名前は開発中のものです。 mailto:sage [2008/02/22(金) 14:30:33 ID:ik+aPlRF]
- >>559
まぁ、>>1はC++初心者のようだからな。 C++の標準記法を知らなくても不思議じゃない。 補足しておこう。 >・コンストラクタで初期化じゃなく代入をしてる 多分>>1は初期化リストを知らない。 初期化リストのほうが分かりやすいし、constな変数、参照は これでしか初期化できない(代入できないため)。 >・継承しててもデストラクタがvirtualじゃない デストラクタがvirtualじゃないと、 基底クラスのポインタに派生クラスのポインタを代入して ポリモ−フィズムをしているとき、 オブジェクトを破棄するときに派生クラスのデストラクタが呼ばれない。 >・enumを使わず#define使ってる #defineは時代遅れ。コンパイラが処理していないので。 できればenumやconstを使う。 >・ローカル変数にポインタか参照おけばいいのに"character[ci]->getDs()->"のような記述が沢山並んでいる ローカル変数にポインタか参照を代入して、 hoge = character[ci]->getDs(); hoge->hoge(); のように呼び出したほうが読みやすい(し、関数を不必要に呼ばないので高速) ということを言っている。
- 561 名前:名前は開発中のものです。 [2008/02/22(金) 14:33:59 ID:ik+aPlRF]
- 続き。
>・あちこちで動的なメモリ確保を行っているにも関わらずスマートポインタを使っていない 動的メモリ確保は解放し忘れてしまうので、 参照が無くなった時に自動的に解放してくれる boost::smart_ptrのようなスマートポインタを使うのが基本。 標準のスマートポインタにはstd::auto_ptrがあるが、使い方が特殊でオススメしない。 使えるところなら、std::vectorを使うのも良い。 >・警告レベルが最大じゃない 警告を無視するのはバグの元。 むしろ、「もっと俺に警告をくれ!!」のような勢いで。
- 562 名前:名前は開発中のものです。 mailto:sage [2008/02/22(金) 20:29:49 ID:zYdRz8UL]
- あんまり一気にダメ出ししちゃうと はかせタンが凹んじゃうから
週に1個ほど、ちょいダメ出しにしといてあげて オレはそうしてる まぁ、はかせタンの向上心なら幾らダメ出ししても学習しそうだけど
- 563 名前:名前は開発中のものです。 mailto:sage [2008/02/22(金) 20:38:44 ID:HEZBKFdo]
- ダメ出しでも実力自慢じゃなくフォロー入ってるあたり良スレ
- 564 名前:559 mailto:sage [2008/02/22(金) 21:37:02 ID:sRPpWiqL]
- ソースはそこそこ綺麗だったよ
このスレに載る疑似コードがいつもショボかったから、upされてるのも当然…と思ってたんで意外だった >>562 この先原因不明のバグでモチベーションダウンさせるよりはいいかなと思った。 少し反省している。
- 565 名前:1 [2008/02/22(金) 22:55:08 ID:OojD/ESp]
- みんなのヌクモリティで前がにじんで見えない…
みんなありがと ダメだしが多いのは、へこまないのは嘘ですけど 消化しきるのに時間がかかるので、レスが遅くなっちゃって申し訳ない気持ちが強いです。Orz ご飯食べてお風呂入って続きがんばります! みんな ほんとに ありがとう! 追伸 またアク禁の食らいました。 なんでこんなに喰らうんだろう? 普通そんなもん?
- 566 名前:名前は開発中のものです。 mailto:sage [2008/02/23(土) 02:05:15 ID:bnLD25M9]
- >>565
俺も最近くらった。一日でとけたけど。
|

|