Project1

标题: 【RGSS】顯示地名 + 依然加上我的問題> [打印本页]

作者: mosluce    时间: 2007-6-9 00:22
标题: 【RGSS】顯示地名 + 依然加上我的問題>
#==============================================================================
# ■ Window_Space
#------------------------------------------------------------------------------
# 顯示地名視窗。
#==============================================================================

class Window_Space < Window_Base
#--------------------------------------------------------------------------
# ● 實體變數宣告
#--------------------------------------------------------------------------
#attr_accessor :autoclosetime
#--------------------------------------------------------------------------
# ● 初始化視窗
#--------------------------------------------------------------------------
def initialize
super(220, 5, 200, 66)
self.contents = Bitmap.new(width - 32, height - 32)
self.back_opacity = 160
refresh
end
#--------------------------------------------------------------------------
# ● 更新
#--------------------------------------------------------------------------
def refresh
self.contents.clear
if $town_name != nil
cx = contents.text_size($data_system.words.gold).width
self.contents.font.color = normal_color
self.contents.draw_text(2, 0, 170-cx-2, 32, $town_name, 1)
end
end
end

#=====================以下非程式碼======================
我的問題是...我不會設定消失時間...雖然好像會自動消失XD
學東西還是要學完整點...
有哪位高手可以幫忙一下呢?

作者: mosluce    时间: 2007-6-9 00:22
标题: 【RGSS】顯示地名 + 依然加上我的問題>
#==============================================================================
# ■ Window_Space
#------------------------------------------------------------------------------
# 顯示地名視窗。
#==============================================================================

class Window_Space < Window_Base
#--------------------------------------------------------------------------
# ● 實體變數宣告
#--------------------------------------------------------------------------
#attr_accessor :autoclosetime
#--------------------------------------------------------------------------
# ● 初始化視窗
#--------------------------------------------------------------------------
def initialize
super(220, 5, 200, 66)
self.contents = Bitmap.new(width - 32, height - 32)
self.back_opacity = 160
refresh
end
#--------------------------------------------------------------------------
# ● 更新
#--------------------------------------------------------------------------
def refresh
self.contents.clear
if $town_name != nil
cx = contents.text_size($data_system.words.gold).width
self.contents.font.color = normal_color
self.contents.draw_text(2, 0, 170-cx-2, 32, $town_name, 1)
end
end
end

#=====================以下非程式碼======================
我的問題是...我不會設定消失時間...雖然好像會自動消失XD
學東西還是要學完整點...
有哪位高手可以幫忙一下呢?

作者: 精灵使者    时间: 2007-6-9 01:25
這個嘛……請你參考站上的腳本。
http://rpg.blue/web/htm/news119.htm
#==============================================================================
# 本腳本來自www.66RPG.com,使用和轉載請保留此信息
#==============================================================================
#==============================================================================
# ■ 地圖名顯示腳本
#     by Yuee
#------------------------------------------------------------------------------
# 在Main的上方插入一個頁,將本腳本複制到那頁中即可
#==============================================================================
#==============================================================================
# ■ Window_MapName
#------------------------------------------------------------------------------
#  顯示地圖名字的窗口。
#==============================================================================
class Window_MapName
  # 暫時屏蔽用的開關
  SWITCH = 35
  
  # 窗口位置設定
  NAME_X = 380      # 矩形左上頂點X坐標
  NAME_Y = 20       # 矩形左上頂點Y坐標
  NAME_W = 220      # 矩形寬
  NAME_H = 60       # 矩形高
  
  # 顯示時間設置
  SHOW_TIME_0 = 10  # 地圖名出現前等待的幀數
  SHOW_TIME_1 = 10  # 地圖名從不可見變成可見的幀數
  SHOW_TIME_2 = 34  # 地圖名完全可見的幀數
  SHOW_TIME_3 = 16  # 地圖名從可見變成不可見的幀數
  
  # 完全可見時的透明度設置
  OPACITY_1 = 244   # 邊框
  OPACITY_2 = 144   # 背景
  OPACITY_3 = 255   # 文字
  
  # 地圖名字的顔色
  TEXT_COLOR = Color.new(255, 255, 255, 255)
   
  #--------------------------------------------------------------------------
  # ● 初始化狀態
  #--------------------------------------------------------------------------
  def initialize
    super(NAME_X , NAME_Y, NAME_W, NAME_H)
    # 初始化窗口透明度
    self.opacity = 0
    self.back_opacity = 0
    self.contents_opacity = 0
    self.contents = Bitmap.new(width - 32, height - 32)
    # 剩余幀數初始化
    @show_time = 0
  end
  #--------------------------------------------------------------------------
  # ● 輸出文字
  #--------------------------------------------------------------------------
  def setname   
    unless $game_switches[SWITCH]==true
      # 獲取地圖ID
      newid = $game_map.map_id
      time = SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3  
      # 如果現在的地圖的ID不是剛才顯示的地圖ID則開始顯示
      if newid != @id
        @id = newid
        @show_time = SHOW_TIME_0 + SHOW_TIME_1 + SHOW_TIME_2 + SHOW_TIME_3
      # 剩余幀數爲0是時,全部窗口透明
      elsif @show_time  (SHOW_TIME_2 + SHOW_TIME_3)
        self.opacity = @show_time
#==============================================================================
# ■ Scene_Map
#------------------------------------------------------------------------------
#  處理地圖畫面的類。(追加定義)
#==============================================================================
class Scene_Map
  alias smn_main main
  def main
    @mapname = Window_MapName.new
    smn_main
    @mapname.dispose
  end
  
  alias smn_update update
  def update
    @mapname.setname
    smn_update
  end
end
#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  處理標題畫面的類。(追加定義)
#==============================================================================
class Scene_Title
  alias smn_main main
  def main
    # 讀取地圖信息文件
    $data_mapinfos = load_data("Data/MapInfos.rxdata")
    smn_main
  end
end
#==============================================================================
# 本腳本來自www.66RPG.com,使用和轉載請保留此信息
#==============================================================================

作者: 小真·爱舞    时间: 2007-6-9 01:31
同楼上,就是控制显示帧数,根据帧数来增减opacity参数而已。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1