Da gibt es verschiedene Möglichkeiten; persönlich würde ich die Zahl bei jeder Änderung neu zeichnen, und zwar auf ein DynamicSprite, das als .BackgroundGraphic eines GUIs gesetzt wird.
[ags]DynamicSprite*MyDisplay;
void UpdateDisplay(int value) {
String s = String.Format("%03d", value); // hier wird z.B. 47 zu "047"
DrawingSurface*ds = MyDisplay.GetDrawingSurface();
ds.Clear();
int i, n;
while (i < 3) {
n = s.Chars - 48; // hier mache ich aus den Zeichen des Strings die Ziffern, z.B. s.Chars[1] ist '4' bzw. 52 (ascii) und wird somit zur Zahl 4
ds.DrawImage(i*20, 0, n + 15); // die Ziffernsprites sind 18 Pixel breit, 2 Pixel Abstand -> i*20, die Sprites haben die Slotnummern 15-24, -> n +15
i++;
}
ds.Release();
gMyDisplay.BackgroundGraphic = MyDisplay.Graphic; // sprite als Hintergrund setzen (eigentlich nur einmal nötig)
}[/ags]
Der Vorteil eines GUIs liegt auf der Hand, es ist nämlich raumunabhängig. Ansonsten müsste ich für jeden Raum die drei oder vier Anzeige-Objekte erstellen.