RPGVX.net

  RPGVX.net => RPGVX.net Service => Archiv => Thema gestartet von: Evil95 am April 29, 2008, 23:42:19

Titel: Vollbildabfrage vor Scene_Title
Beitrag von: Evil95 am April 29, 2008, 23:42:19
moin moin VX-Community,

ich suche ein Script, dass noch vor der Scene_Title eine Abfrage macht. Sowas wie:

Spiel im Vollbildmodus starten?
Ja
Nein

und nach der jeweiligen auswahl wird das game in den vollbildmodus versetzt oder auch nich. habe es selber schon probiert...bin aba an massig Syntax-Fehler gescheitert  unsure.gif\" style=\"vertical-align:middle\" emoid=\":unsure:\" border=\"0\" alt=\"unsure.gif\" /]
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: ERZENGEL am April 29, 2008, 23:57:43
Ich finde, dass ziemlich unnötig, da der VX ja selbst die Option besitzt Spiele im Vollbild zu starten. Aber wenn du es doch für nötig hältst wäre es nur ne Arbeit von nicht ma 5 Minuten :)
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: Evil95 am April 30, 2008, 00:14:38
ja ich weiß, dass der vx das selbst hat, aber ich würde das gerne mit ner abfrage machen. würde mich voll freuen wenn du sowas machen könntest. :)
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: ERZENGEL am April 30, 2008, 00:23:17
Hier bitte, jedoch verwendet es das "Vollbild"-Skript, dass man vom XP her kennt und somit seine Nachteil mitbringt, dass es verkleinert, wenn man eingestellt hat, dass das Spiel im Vollbild starten soll.
#==============================================================================
# ** Scene_Fullscreen
#------------------------------------------------------------------------------
#  Insert description here
#==============================================================================

class Scene_Fullscreen < Scene_Base
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    if $keybd || $BTEST         # Falls $keybd oder $BTEST true ist
      $scene = Scene_Title.new  # Gehe zum Titelbildschirm
    else
      super                     # Rufe Main-Methode von Scene_Base auf
    end
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    $data_system = load_data('Data/System.rvdata')  # Lade System.rvdata
    create_windows                                  # Windows erstellen
  end  
  #--------------------------------------------------------------------------
  # * Post-Start Processing
  #--------------------------------------------------------------------------
  def post_start
    super
    open_command_window
  end
  #--------------------------------------------------------------------------
  # * Pre-termination Processing
  #--------------------------------------------------------------------------
  def pre_terminate
    super
    close_command_window
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_windows
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    @help_window.update
    @command_window.update
    if Input.trigger?(Input::C)
      Sound.play_decision
      case @command_window.index
      when 0; command_fullscreen        # Ja
      when 1; $scene = Scene_Title.new  # Nein
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_windows
    @help_window = Window_Help.new
    @help_window.set_text('In Vollbild spielen?', 1)
    commands = ['Ja', 'Nein']
    @command_window = Window_Command.new(128, commands)
    @command_window.x = (544 - @command_window.width) / 2
    @command_window.y = 288
    @command_window.openness = 0
    @command_window.open
  end
  #--------------------------------------------------------------------------
  # * Dispose of all Windows
  #--------------------------------------------------------------------------
  def dispose_windows
    @help_window.dispose
    @command_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Open Command Window
  #--------------------------------------------------------------------------
  def open_command_window
    @command_window.open
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 255
  end
  #--------------------------------------------------------------------------
  # * Close Command Windows
  #--------------------------------------------------------------------------
  def close_command_window
    @command_window.close
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 0
  end
  #--------------------------------------------------------------------------
  # * Command: Ja (Wechsel in Vollbildmodus)
  #--------------------------------------------------------------------------
  def command_fullscreen
    unless $keybd
      $keybd = Win32API.new('user32.dll', 'keybd_event', %w{ i i l l }, 'v')
      $keybd.call(0x12, 0, 0, 0)
      $keybd.call(0x0D, 0, 0, 0)
      $keybd.call(0x0D, 0, 2, 0)
      $keybd.call(0x12, 0, 2, 0)
      $keybd = true
    end
    $scene = Scene_Title.new
  end  
end
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: Evil95 am April 30, 2008, 00:30:55
boah geil danke. *verbeug* Kommst auf jeden fall in die Credits...

falls jemand das nutzen will muss er in Main noch was ändern.
das hier
$scene = Scene_Title.newin das $scene = Scene_Fullscreen.new
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: ERZENGEL am April 30, 2008, 01:05:44
Ich hab's mal so gemacht:
#==============================================================================
# ** Window_Fullscreen
#==============================================================================

class Window_Fullscreen < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     x : window X coordinate
  #     y : window Y coordinate
  #--------------------------------------------------------------------------
  def initialize(str)
    super(0, 48, 272, WLH + 32)
    @str = str
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.draw_text(0, 0, 240, WLH, @str, 1)
  end
end

#==============================================================================
# ** Scene_Fullscreen
#==============================================================================

class Scene_Fullscreen < Scene_Base
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    if $keybd || $BTEST         # Falls $keybd oder $BTEST true ist
      $scene = Scene_Title.new  # Gehe zum Titelbildschirm
    else
      super                     # Rufe Main-Methode von Scene_Base auf
    end
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    $data_system = load_data('Data/System.rvdata')  # Lade System.rvdata
    create_windows                                  # Windows erstellen
  end  
  #--------------------------------------------------------------------------
  # * Post-Start Processing
  #--------------------------------------------------------------------------
  def post_start
    super
    open_command_window
  end
  #--------------------------------------------------------------------------
  # * Pre-termination Processing
  #--------------------------------------------------------------------------
  def pre_terminate
    super
    close_command_window
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_windows
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    @fullscreen_window.update
    @command_window.update
    if Input.trigger?(Input::C)
      Sound.play_decision
      case @command_window.index
      when 0; command_fullscreen        # Ja
      when 1; $scene = Scene_Title.new  # Nein
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_windows
    str = 'Im Vollbildmodus starten?'
    @fullscreen_window = Window_Fullscreen.new(str)        
    @fullscreen_window.x = (544 - @fullscreen_window.width) / 2
    commands = ['Ja', 'Nein']
    @command_window = Window_Command.new(128, commands)
    @command_window.x = (544 - @command_window.width) / 2
    @command_window.y = 288
    @command_window.openness = 0
    @command_window.open
  end
  #--------------------------------------------------------------------------
  # * Dispose of all Windows
  #--------------------------------------------------------------------------
  def dispose_windows
    @fullscreen_window.dispose
    @command_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Open Command Window
  #--------------------------------------------------------------------------
  def open_command_window
    @command_window.open
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 255
  end
  #--------------------------------------------------------------------------
  # * Close Command Windows
  #--------------------------------------------------------------------------
  def close_command_window
    @command_window.close
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 0
  end
  #--------------------------------------------------------------------------
  # * Command: Ja (Wechsel in Vollbildmodus)
  #--------------------------------------------------------------------------
  def command_fullscreen
    unless $keybd
      $keybd = Win32API.new('user32.dll', 'keybd_event', %w{ i i l l }, 'v')
      $keybd.call(0x12, 0, 0, 0)
      $keybd.call(0x0D, 0, 0, 0)
      $keybd.call(0x0D, 0, 2, 0)
      $keybd.call(0x12, 0, 2, 0)
      $keybd = true
    end
    $scene = Scene_Title.new
  end  
end
@PS: Und nein ich war das nicht... das war Deidara, der Tricksters Skript für RGSS umgeschrieben hat.

EDIT: oO Egaaal und hab ma wieder was vergessen zu erwähnen..
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: Evil95 am April 30, 2008, 01:21:23
öhm...irgendwie gibts bei mir keine veränderung....das sieht alles genau aus wie beim ersten code. soll das so sein?
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: ERZENGEL am April 30, 2008, 12:41:14
Wenn es immer noch genauso ist, hast du das andere nicht entfernt bzw. mit dem ersetzt.
Titel: Vollbildabfrage vor Scene_Title
Beitrag von: Evil95 am April 30, 2008, 12:49:07
EDIT: ah ok...es funzt :D
so sieht es doch schon viel besser aus :)danke, danke, danke
SimplePortal 2.3.3 © 2008-2010, SimplePortal