设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 6787|回复: 13
打印 上一主题 下一主题

[RMVX发布] 在菜单中显示当前地图名字……囧啊

[复制链接]

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

跳转到指定楼层
1
发表于 2010-9-9 19:06:16 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 冰舞蝶恋 于 2010-9-9 19:58 编辑

一个很简单的脚本……话说我还是脚本盲……只是受到各类显示地图名的脚本的启发……然后把脚本上的语句复制、粘贴,再从站上的脚本教程上复制、粘贴……忙活了一下午……总算是搞好了= =
第一次弄脚本,而且还是直接改原版菜单脚本= =
希望支持哈~
再把脚本贴出来吧= =
  1. #==============================================================================
  2. # ■ Scene_Menu
  3. #------------------------------------------------------------------------------
  4. #  处理菜单画面的类。
  5. #==============================================================================
  6. #---------------------------------------------------------
  7. # ●菜单中显示地图
  8. #---------------------------------------------------------
  9. class Game_Map
  10. attr_reader   :map_id  
  11.   def mpname
  12.   $mpname = load_data("Data/MapInfos.rvdata")
  13.   $mpname[@map_id].name
  14.   end
  15. end
  16. class Window_Mapname < Window_Base
  17.   def initialize(x, y)
  18.     super(0, 272, 160, WLH + 64)
  19.     refresh
  20.   end  
  21.   def refresh
  22.     self.contents.clear
  23.     self.contents.font.color = system_color
  24.     self.contents.draw_text(4, 0, 120, 32, "所在位置:")
  25.     self.contents.font.color = normal_color
  26.     self.contents.draw_text(4, 32, 120, 32, $game_map.mpname.to_s, 2)
  27.   end
  28. end

  29. #---------------
  30. #正式开始菜单
  31. #---------------
  32. class Scene_Menu < Scene_Base
  33.   #--------------------------------------------------------------------------
  34.   # ● 初始化对像
  35.   #     menu_index : 命令窗口光标初始位置
  36.   #--------------------------------------------------------------------------
  37.   def initialize(menu_index = 0)
  38.     @menu_index = menu_index
  39.   end
  40.   #--------------------------------------------------------------------------
  41.   # ● 开始处理
  42.   #--------------------------------------------------------------------------
  43.   def start
  44.     super
  45.     create_menu_background
  46.     create_command_window
  47.     @gold_window = Window_Gold.new(0, 360)
  48.     @status_window = Window_MenuStatus.new(160, 0)
  49.     @mapname_window = Window_Mapname.new(0, 178)
  50.     @mapname_window.openness = 0
  51.     @mapname_window.open
  52.   end
  53.   #--------------------------------------------------------------------------
  54.   # ● 结束处理
  55.   #--------------------------------------------------------------------------
  56.   def terminate
  57.     super
  58.     dispose_menu_background
  59.     @command_window.dispose
  60.     @gold_window.dispose
  61.     @status_window.dispose
  62.     @mapname_window.dispose
  63.   end
  64.   #--------------------------------------------------------------------------
  65.   # ● 更新画面
  66.   #--------------------------------------------------------------------------
  67.   def update
  68.     super
  69.     update_menu_background
  70.     @command_window.update
  71.     @gold_window.update
  72.     @status_window.update
  73.     @mapname_window.update
  74.     if @command_window.active
  75.       update_command_selection
  76.     elsif @status_window.active
  77.       update_actor_selection
  78.     end
  79.   end
  80.   #--------------------------------------------------------------------------
  81.   # ● 生成命令窗口
  82.   #--------------------------------------------------------------------------
  83.   def create_command_window
  84.     s1 = Vocab::item
  85.     s2 = Vocab::skill
  86.     s3 = Vocab::equip
  87.     s4 = Vocab::status
  88.     s5 = Vocab::save
  89.     s6 = Vocab::game_end
  90.     @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
  91.     @command_window.index = @menu_index
  92.     if $game_party.members.size == 0          # 如果队伍为空
  93.       @command_window.draw_item(0, false)     # 无效化物品选项
  94.       @command_window.draw_item(1, false)     # 无效化技能选项
  95.       @command_window.draw_item(2, false)     # 无效化装备选项
  96.       @command_window.draw_item(3, false)     # 无效化状态选项
  97.     end
  98.     if $game_system.save_disabled             # 如果禁止存档
  99.       @command_window.draw_item(4, false)     # 无效化存档选项
  100.     end
  101.   end
  102.   #--------------------------------------------------------------------------
  103.   # ● 更新命令窗口
  104.   #--------------------------------------------------------------------------
  105.   def update_command_selection
  106.     if Input.trigger?(Input::B)
  107.       Sound.play_cancel
  108.       $scene = Scene_Map.new
  109.     elsif Input.trigger?(Input::C)
  110.       if $game_party.members.size == 0 and @command_window.index < 4
  111.         Sound.play_buzzer
  112.         return
  113.       elsif $game_system.save_disabled and @command_window.index == 4
  114.         Sound.play_buzzer
  115.         return
  116.       end
  117.       Sound.play_decision
  118.       case @command_window.index
  119.       when 0      # 物品
  120.         $scene = Scene_Item.new
  121.       when 1,2,3  # 技能、装备、状态
  122.         start_actor_selection
  123.       when 4      # 存档
  124.         $scene = Scene_File.new(true, false, false)
  125.       when 5      # 结束游戏
  126.         $scene = Scene_End.new
  127.       end
  128.     end
  129.   end
  130.   #--------------------------------------------------------------------------
  131.   # ● 角色选择开始
  132.   #--------------------------------------------------------------------------
  133.   def start_actor_selection
  134.     @command_window.active = false
  135.     @status_window.active = true
  136.     if $game_party.last_actor_index < @status_window.item_max
  137.       @status_window.index = $game_party.last_actor_index
  138.     else
  139.       @status_window.index = 0
  140.     end
  141.   end
  142.   #--------------------------------------------------------------------------
  143.   # ● 角色选择结束
  144.   #--------------------------------------------------------------------------
  145.   def end_actor_selection
  146.     @command_window.active = true
  147.     @status_window.active = false
  148.     @status_window.index = -1
  149.   end
  150.   #--------------------------------------------------------------------------
  151.   # ● 角色选择更新
  152.   #--------------------------------------------------------------------------
  153.   def update_actor_selection
  154.     if Input.trigger?(Input::B)
  155.       Sound.play_cancel
  156.       end_actor_selection
  157.     elsif Input.trigger?(Input::C)
  158.       $game_party.last_actor_index = @status_window.index
  159.       Sound.play_decision
  160.       case @command_window.index
  161.       when 1  # 技能
  162.         $scene = Scene_Skill.new(@status_window.index)
  163.       when 2  # 装备
  164.         $scene = Scene_Equip.new(@status_window.index)
  165.       when 3  # 状态
  166.         $scene = Scene_Status.new(@status_window.index)
  167.       end
  168.     end
  169.   end
  170. end
复制代码
截图:

就这样了~
呵呵~~~继续声明我依然是脚本盲~

范例如下:

在菜单中显示当前地图名.zip

250.22 KB, 下载次数: 200

点评

⊙_⊙很不错啊!  发表于 2013-10-4 08:45
大家好,我叫节操,有一天,我被吃了。
http://forever-dream.5d6d.com
永恒の梦制作组论坛

129993099
永恒の梦制作组QQ群

Lv3.寻梦者

梦石
0
星屑
1347
在线时间
676 小时
注册时间
2009-11-11
帖子
2790
2
发表于 2010-9-9 19:22:11 | 只看该作者
不错啊,前来瞻仰

点评

⊙_⊙  发表于 2013-10-4 08:45

嘿。嘿。嘿
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
416 小时
注册时间
2006-10-21
帖子
1245
3
发表于 2010-9-9 20:00:48 | 只看该作者
...好几段貌似都能删掉...

点评

初学~帮忙改下啦~  发表于 2010-9-9 20:05
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
254 小时
注册时间
2010-3-21
帖子
334
4
发表于 2010-9-9 20:04:10 | 只看该作者
啊,复制粘贴也能搞出这种脚本来...
自由,是火一般的梦想。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
416 小时
注册时间
2006-10-21
帖子
1245
5
发表于 2010-9-9 20:10:02 | 只看该作者
光留和@mapname_window有关的
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

6
 楼主| 发表于 2010-9-9 20:54:48 | 只看该作者
回复 wangswz 的帖子

恳请大人帮忙改下
   
回复 支持 反对

使用道具 举报

菜鸟飞呀飞 该用户已被删除
7
发表于 2010-9-9 21:09:18 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

花开堪折直须折

梦石
0
星屑
681
在线时间
943 小时
注册时间
2010-7-17
帖子
4963

贵宾

8
 楼主| 发表于 2010-9-9 21:32:49 | 只看该作者
回复 菜鸟飞呀飞 的帖子
嘿嘿~~我的复制-粘贴功可不是吹的~~

   
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
336 小时
注册时间
2010-8-26
帖子
428
9
发表于 2010-9-9 21:47:34 | 只看该作者
回复 冰舞蝶恋 的帖子

这么说呢,这样的脚本很早就好像有啦,还能附加时间的,不过最近 这样贴都行,你眼力还真准啊,
   
回复 支持 反对

使用道具 举报

Lv1.梦旅人

万物创造者

梦石
0
星屑
54
在线时间
352 小时
注册时间
2008-2-15
帖子
2432
10
发表于 2010-9-9 21:53:44 | 只看该作者
本帖最后由 小幽的马甲 于 2010-9-9 21:54 编辑

写出的脚本是给人插在main前面的,不是用来替换默认脚本的
那个openness很奇怪,要它干嘛……
Window_Mapname的两个参数是废参数……
Scene_Menu里不用alias会让这个脚本冲突的欲仙欲死
所以应该这样写比较好
  1. class Game_Map
  2. attr_reader   :map_id  
  3.   def mpname
  4.   $mpname = load_data("Data/MapInfos.rvdata")
  5.   $mpname[@map_id].name
  6.   end
  7. end
  8. class Window_Mapname < Window_Base
  9.   def initialize
  10.     super(0, 272, 160, WLH + 64)
  11.     refresh
  12.   end  
  13.   def refresh
  14.     self.contents.clear
  15.     self.contents.font.color = system_color
  16.     self.contents.draw_text(4, 0, 120, 32, "所在位置:")
  17.     self.contents.font.color = normal_color
  18.     self.contents.draw_text(4, 32, 120, 32, $game_map.mpname.to_s, 2)
  19.   end
  20. end
  21. class Scene_Menu < Scene_Base
  22.   alias o_s start
  23.   def start
  24.     o_s
  25.     @mapname_window = Window_Mapname.new
  26.   end
  27.   alias o_t terminate
  28.   def terminate
  29.     o_t
  30.     @mapname_window.dispose
  31.   end
  32.   alias o_u update
  33.   def update
  34.     o_u
  35.     @mapname_window.update
  36.   end
  37. end
复制代码

点评

⊙_⊙  发表于 2013-10-4 08:46
不晓得你们这些斑竹能给自己加分么= .= 当我没说好了- -  发表于 2010-9-9 22:31
高手~~  发表于 2010-9-9 22:31
From mortal hope immortal power springs.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-26 22:47

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表