私のゲームの中で、同じオブジェクトを持つ配列をすべて保持しています。この配列は、この配列を使用して、スポーンされたオブジェクトのリストを追跡します。私は、コードを実行すると、今Visual Studioブレークポイントの問題
for(int i = 0; i < wildPets.Length; i++)
{
Pet pet = new Pet();
wildPets[i] = pet;
}
それで一つだけ新しいペットを行なったし、配列(同じ名前のすべてのインデックスに割り当てられたとして、すべてのペットは、同じです、:それは基本的なコードを持っていますid、hpなど)。私はブレークポイント機能を使用して、なぜこれが起きているのかを確認しました。コードをステップ実行するとオブジェクトは常に異なりますが、ブレークポイントがないとエラーが発生します。私はブレークポイントが本当に便利な機能だと思ったが、今は自分のコードを正確に表現しているかどうかわからない。私がここで欠けているものがありますか?
public Pet()
{
Random r = new Random();
type = ToType(r.Next(10));
double temp = (GetHP(type, r));
if (temp > 0)
{
hp5 = temp;
}
temp = (GetSpeed(type, r));
if (temp > 0)
{
speed5 = temp;
}
level = r.Next(5, 16);
rarity = r.Next(100);
rarityLevel = GetRarity();
DisplayImage = frmMain.petImages[petID];
abilities = FillAbilities(type, abilities);
}
それはランダムレベル、希少性、ID、および他のものを使用して新しいペットを作る:私は
コンストラクタを投稿することができますサンプルコードを持っています。私は時計のセクションを使用しているVisual Studioです。 2つのイメージは、バックグラウンドで実行されているメソッドとその配列に含まれているメソッドを示し、ブレークポイントを設定して1行ずつステップ実行します。 1つは配列が同じID(同じものすべて、IDはちょうど注意すべき簡単な方法です)で満ちていて、もう1つはコードがどのように実行されるべきかのような、新しい異なるペットオブジェクトでいっぱいの配列を持っています。
同じオブジェクトですが、このコードで実行される異なるインスタンス – Fredou
オブジェクトが同じかどうかどうしてチェックしますか? – Peter
私はあなたが何を求めているのか分かりません。あなたはあなたの質問やあなたのコードを詳述できますか?また、 'エラーが発生していないブレークポイントはありません' <= what error、例外またはエラーメッセージは表示されませんでした。なぜ同じであるかについては、ループがあり、配列内のすべてのアイテムに対して新しいペットを作成します。 – Igor