質問編集履歴
3
Githubを追加しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -6,8 +6,8 @@
|
|
6
6
|
やりたいこと「 どうすれば実装を隠した状態でやつコピーコンストラクタが動いても正常に座標を修正出来るのか知りたい。 」
|
7
7
|
|
8
8
|
|
9
|
+
Github: https://github.com/Shigurechan/Dungeon_Game/tree/43ddb23595d0b3498279c1b5c2acc2028521333b
|
9
10
|
|
10
|
-
|
11
11
|
```cpp
|
12
12
|
//背景を初期化
|
13
13
|
for (int y = 0; y < STAGE_SIZE_HEIGHT; y++)
|
2
文章を修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,10 +1,13 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
現状 [ 使い方はプレイヤークラス等のこのCollisionクラス変数を作ってプレイヤーの座標の変数のアドレスを変数に設定して
|
2
|
+
player->mCollision(enemy->mCollision);とすることで当たり判定の判定を隠してシンプルに位置を修正できます。 ]
|
3
3
|
|
4
|
+
問題 「 例えばenemy をベクターにした場合コピーコンストラクタでコピーされるためエネミー座標のアドレスを格納している変数が無効なアドレスになっています。現状これをUpdate();関数で毎フレーム設定することで修正しますがあまりい修正方法とは思えません。 」
|
4
5
|
|
6
|
+
やりたいこと「 どうすれば実装を隠した状態でやつコピーコンストラクタが動いても正常に座標を修正出来るのか知りたい。 」
|
5
7
|
|
6
8
|
|
7
9
|
|
10
|
+
|
8
11
|
```cpp
|
9
12
|
//背景を初期化
|
10
13
|
for (int y = 0; y < STAGE_SIZE_HEIGHT; y++)
|
1
文章を編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
提示コードの下のCollisionクラスですがPlayer->mCollision->Intersect(itr->mCollisoin);とすることで実装部を隠すシンプルな構造をしているのですが提示コードのスイッチ文のコードでコピーコンストラクタが起きることで座標変数のpositionのアドレスが無意味なものに変更されてしまうためうまく機能しません。この場合
|
1
|
+
提示コードの下のCollisionクラスですがPlayer->mCollision->Intersect(itr->mCollisoin);とすることで実装部を隠すシンプルな構造をしているのですが提示コードのスイッチ文のコードでコピーコンストラクタが起きることで座標変数のpositionのアドレスが無意味なものに変更されてしまうためうまく機能しません。この場合構造にするのが正解なのでしょうか?MapObjectクラスにColliisonクラスを宣言しています。
|
2
2
|
実装部を隠した設計にしたいです。
|
3
3
|
|
4
4
|
|