Home > Tutorial

RGSS形式簡略

第一篇的學習日誌寫了Class的大概用法,

Class是RGSS的基本架構,
用Class中呼叫其他Class定義的Method,
不只是RGSS,有很多用C++寫的程式,
都是用這種方式寫程式的。
舉個例,
 
#==============================================================================
# ■ Main
#------------------------------------------------------------------------------
#  各定義結束後、從這裡開始實際處理。
#==============================================================================
begin
Font.default_name = (["新細明體"])
  Graphics.freeze
  $scene = Scene_Title.new
  # $scene用作做該Class的新Object,以便呼叫Method。
  while $scene != nil
    $scene.main
  # 這裡用作不斷Loop,且呼叫Class Scene_Title內的Method main。
  end
  Graphics.transition(20)
rescue Errno::ENOENT
  filename = $!.message.sub("No such file or directory - ", "")
  print("找不到文件 #{filename。} ")
end

 RGSS就是這樣開始執行的了!

再看看Scene_TitleMethod Main

 

#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  處理標題畫面的程式。
#==============================================================================

class Scene_Title
  def main
    if $BTEST
      battle_test
      return
    end
    $data_actors        = load_data("Data/Actors.rxdata")
    $data_classes       = load_data("Data/Classes.rxdata")
    $data_skills        = load_data("Data/Skills.rxdata")
    $data_items         = load_data("Data/Items.rxdata")
    $data_weapons       = load_data("Data/Weapons.rxdata")
    $data_armors        = load_data("Data/Armors.rxdata")
    $data_enemies       = load_data("Data/Enemies.rxdata")
    $data_troops        = load_data("Data/Troops.rxdata")
    $data_states        = load_data("Data/States.rxdata")
    $data_animations    = load_data("Data/Animations.rxdata")
    $data_tilesets      = load_data("Data/Tilesets.rxdata")
    $data_common_events = load_data("Data/CommonEvents.rxdata")
    $data_system        = load_data("Data/System.rxdata")
   
$game_system = Game_System.new
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title($data_system.title_name)
 #下略....


在這裡載入了Database,

而且還開了一個新的Game_System Object,

這個Game_System的Object,還會呼叫很多其他Class Method,

可見RGSS是複雜的,但是只要理解,

就能大事化小。

 

回前頁

Hosted by www.Geocities.ws

1