Ich erstelle ein Objekt durch Werte aus anderen object.Like mit, dass:C# Änderungen Wert einer Objekteigenschaft von anderen
MAP.cs
int[][] map = {......};
Mob m = new Mob(0,0,map);
Und ruft Mob Klasse Funktion Verschieben()
m.Move();
Funktion Move sieht wie folgt aus:
int xp = (int)Math.Floor(x/32);
int yp = (int)Math.Floor(y/32);
int[] result = lookForClosest(xp, yp);
this.nextX = result[1];
this.nextY = result[0];
map[this.nextY][this.nextX] = 1;
Funktionen werden mit DispatcherTimer in einer anderen Klasse (MainWindow) aufgerufen Das Ergebnis dieser Anwendung ist, dass Map-Eigenschaft in MAP-Klasse geändert wird. Die einzige Änderung sollte in der Map-Eigenschaft des Mob-Objekts vorgenommen werden. Irgendeine Erklärung und mögliche Reparatur?
Haben Sie versucht, eine Kopie des 'map' Arrays an den' Mob' Konstruktor zu übergeben? – user1620220
Wie kann es gemacht werden? – Berrigan