Willst Du die Größe des Sprites auf der Bühne ändern oder die Größe des Darstellers?
Ersteres geht zB. mit...
sprite(x).width = 1000
sprite(x).height = 1000
(konkrete Pixelangabe)
sprite(x).width = sprite(x).width * 1.5
sprite(x).height = sprite(x).height * 1.5
(Faktor)
sprite(x).rect = sprite(x).rect * 2
etc.
Letzteres geht mit folgendem Skript...
Dabei wird das Bild von einem Quelldarsteller mit dem Befehl copyPixels in einen anderen kopiert und dabei vergrößert oder verkleinert.
Trockengeschwommen:
Bildobjekt.copyPixels(Quellbild(zB. Darsteller).image, Ziel.rect, Quelle.rect, [hier können noch Parameter rein])
Beispiel:
Nehmen wir mal an Darsteller 2 ist 200 x 200 Pixel groß.
-- die folgende Zeile erzeugt ein neues Bild mit Breite, Höhe und Farbtiefe, das erstmal "virtuell" bleibt, halb so groß wie Darsteller 2
myImg = image(100, 100, 32)
-- diese Zeile kopiert die Pixel des Darstellers 2 in das "virtuelle" Bild und verkleinert sie auf dessen Größe, nämlich um die Hälfte (member(2).rect/2); als Zielrechteck könnte auch myImg.rect angegeben sein:
myImg.copyPixels(member(2).image, member(2).rect/2, member(2).rect)
-- und diese Zeile setzt das "virtuelle" Bild in Darsteller 3 ein:
member(3).image = myImg
Du kannst natürlich auch das Bild wieder in member(2) einsetzen, allerdings ist dann das Ursprungsbild verloren.
Statt der ersten Zeile mit den konkreten Angaben (100, 100) kannst Du natürlich auch (member(2).with / 2, member(2).height / 2) schreiben.
Ich weiß - das ganze ist leider etwas kompliziert und hat den Nachteil, das Director nicht sonderlich gut (bzw. gar nicht) interpoliert. Um Qualitätsverluste zu vermeiden, solltest Du nur verkleinern, nicht vergrößern. Oder bei der Veränderung von Sprites zuerst stark verkeinern und dann erst vergrößern.
Das beste ist es, solche Operationen irgendwie mit Bildbearbeitungsprogrammen zu machen.
Hoffe, ich habe das ganze halbwegs verständlich erklärt, wenn nicht, oder wenn ich Dich falsch verstanden habe, mußt Du nochmal nachfragen.
grüsse,
Christof