仙剑之十里坡

标题: 自动显示地图名称脚本 [打印本页]

作者: 最爱南宫煌    时间: 2010-4-5 20:52
标题: 自动显示地图名称脚本
本帖最后由 最爱南宫煌 于 2010-9-21 14:26 编辑
  1. # ▼▲▼ XRXS20. マップ名表示ウィンドウ 1.01 ▼▲▼
  2. # by にふ, 桜雅 在土
  3. #==============================================================================
  4. # ■ Window_Map_Name
  5. #------------------------------------------------------------------------------
  6. #  マップ名を表示するウィンドウです。
  7. #==============================================================================
  8. class Window_Map_Name < Window_Base
  9. #--------------------------------------------------------------------------
  10. # ● オブジェクト初期
  11. #--------------------------------------------------------------------------
  12. def initialize
  13. super(460, 0, 180, 64)
  14. self.contents = Bitmap.new(width-32, height-32)
  15. @showing_time = 0
  16. @text_color = Color.new(255,255,255,255) # 地名:描写文字色
  17. end
  18. #--------------------------------------------------------------------------
  19. # ● テキスト設定
  20. # text : ウィンドウに表示する文字列
  21. # align : アラインメント (0..左揃え、1..中央揃え、2..右揃え)
  22. #--------------------------------------------------------------------------
  23. def set_text(text, align = 2)
  24. # テキストとアラインメントの少なくとも一方が前回と違っている場合
  25. if text != @text or align != @align
  26. # テキストを再描画
  27. self.contents.clear
  28. @showing_time = 100
  29. @text = text
  30. @align = align
  31. @actor = nil
  32. self.contents_opacity = 255
  33. x = 4
  34. y = 0
  35. self.contents.font.color = Color.new( 0, 0, 0, 192)
  36. self.contents.draw_text(x+2, y+2, self.width - 40, 32, "-"+text+"-",align=1)
  37. self.contents.font.color = Color.new( 64, 64, 64, 192)
  38. self.contents.draw_text(x-1, y-1, self.width - 40, 32, "-"+text+"-", align=1)
  39. self.contents.draw_text(x+1, y-1, self.width - 40, 32, "-"+text+"-", align=1)
  40. self.contents.draw_text(x-1, y+1, self.width - 40, 32, "-"+text+"-", align=1)
  41. self.contents.draw_text(x+1, y+1, self.width - 40, 32, "-"+text+"-", align=1)
  42. self.contents.font.color = @text_color
  43. self.contents.draw_text(x, y, self.width - 40, 32, "-"+text+"-", align=1)
  44. else
  45. @showing_time -= 1
  46. if @showing_time < 100
  47. # フェードアウトしはじめる
  48. self.contents_opacity = @showing_time * 100
  49. elsif @showing_time <= 0
  50. # 一定時間経過したので表示を消す
  51. self.contents.clear
  52. end
  53. end
  54. self.visible = true
  55. end
  56. end
  57. #==============================================================================
  58. # ■ Scene_Map
  59. #==============================================================================
  60. class Scene_Map
  61. #--------------------------------------------------------------------------
  62. # ● メイン処理
  63. #--------------------------------------------------------------------------
  64. alias xrxs20_main main
  65. def main
  66. # 地名ウィンドウを作成
  67. @map_name_window = Window_Map_Name.new
  68. @map_name_window.opacity = 0
  69. # 戻す
  70. xrxs20_main
  71. # 地名ウィンドウを解放
  72. @map_name_window.dispose
  73. end
  74. #--------------------------------------------------------------------------
  75. # ● フレーム更新
  76. #--------------------------------------------------------------------------
  77. alias xrxs20_update update
  78. def update
  79. # 地名ウィンドウの更新
  80. @map_name_window.set_text($game_map.name,1)
  81. xrxs20_update
  82. end
  83. end
  84. #==============================================================================
  85. # ■ Scene_Title
  86. #==============================================================================
  87. class Scene_Title
  88. #--------------------------------------------------------------------------
  89. # ● メイン処理
  90. #--------------------------------------------------------------------------
  91. alias xrxs20_main main
  92. def main
  93. $map_infos = load_data("Data/MapInfos.rxdata")
  94. for key in $map_infos.keys
  95. $map_infos[key] = $map_infos[key].name
  96. end
  97. xrxs20_main
  98. end
  99. end
  100. #==============================================================================
  101. # ■ Game_Map
  102. #==============================================================================
  103. class Game_Map
  104. #--------------------------------------------------------------------------
  105. # ● マップ名を取得
  106. #--------------------------------------------------------------------------
  107. def name
  108. $map_infos[@map_id]
  109. end
  110. end
  111. #============================================================================== #本脚本来自仙剑之十里坡 www.palslp.com
  112. #==============================================================================
复制代码


比较实用的一个脚本,使用这个脚本后,地图的名称会自动显示在右上角,我个人比较喜欢的。
作者: 冷剑随风    时间: 2010-4-5 22:52
南宫童鞋也来发教程啊....
弄得我手心痒痒的....
不过我现在正在学...
可能过几个星期会发个教程
作者: 最爱南宫煌    时间: 2010-4-7 22:16
呵呵,冷剑,我只是有几个比较实用的脚本拿来分享一下罢了,既然你正在学,那就认真学吧!




欢迎光临 仙剑之十里坡 (http://palslp.com/bbs/) Powered by Discuz! X2.5