Hi nochmals!
Vorneweg, ich bin immernoch ziemlich unerfahren was Ruby angeht und beiße mich da langsam durch Arbeite mit dem RPG Maker VX Ace.

Ist es möglich einfach Zahlen auf den Bildschirm zu zeichnen, ohne diese in ein Window zu zeichnen? (Hab in der Bitmap-Klasse keine entsprechende Methode finden können)
Habs dann so gelöst, dass ich ein Objekt der Window_Base-Klasse erstelle und davon dann die Hintergrundgrafiken lösche.
Gibt es eine Möglichkeit die Höhe und Breite eines Fensters schon bei der Erstellung dynamisch an den folgenden Inhalt anzupassen? Ist dies überhaupt wichtig für die Performance, d.h. spielt es eine große Rolle, ob ich z.B. ein 300x300 Fenster, oder ein 60x30 Fenster bewege? (Hintergrundgrafik wird meines Wissens nach in meinem Skript nicht gezeichnet)

Habe nun das Problem wenn ich in einem CommonEvent den Skriptschnipsel "dmgpop(160,120,12)" gefolgt von "dmgpop(100,120,24)" aufrufe, wird zuerst der eine komplett ausgeführt, dann der andere. Ich hätte aber gerne, dass beide gleichzeitig ablaufen!
Gibts hier Probleme mit den lokalen Variablen? (@) Hab mir überlegt eine globale Variable, quasi als Seriennummer, $dmgpopup zu benutzen, damit ich verschiedene Objekte erstellen kann?! (bin mir hier nicht sicher.) Also quasi anstatt @popup eine Art @popup($dmgpopup) wobei ich hier die richtige Syntax nicht kenne.

Würde mich freuen, wenn sich jemand den Code anschauen und mir bei den Problemen helfen könnte. Wenn jemand eine bessere Lösungsidee hat, würde ich mich noch mehr drüber freuen, da ich mir zml sicher bin, dass meine Umsetzung hier stark hinkt. (Auch gerne, was die anschließende Bewegung des PopUps betrifft )

Code:
class Game_Interpreter
  
  def dmgpop(x,y, number)
      # Erzeugt das Bild
    height = 300
    width  = 300
    @popup = Window_Base.new(x,y,height,width)
    @popup.setup_message_font
     
    @empty = Cache.system("Window - No Frame.png")
    @popup.windowskin = @empty
    @popup.back_opacity = 0
    
    @popup.draw_text_ex(0,0,number.to_s)
     
      # Bewegt das Bild
    addx = 0
    addy = 0
      
    while(addy > -40)
      addy -= 10
      addx += 2
      @popup.move((x+addx),(y+addy),height,width)
      wait (2)
    end
    while(addy < 40)
      addy += 7
      addx += 5
      @popup.move((x+addx),(y+addy),height,width)
      wait (2)
    end
    wait(20)
    @popup.dispose

  end
  
  
end