Project1

标题: 地图显示加强脚本,血魔条、攻防敏法、头像、金钱等! [打印本页]

作者: 冰舞蝶恋    时间: 2011-3-24 21:06
标题: 地图显示加强脚本,血魔条、攻防敏法、头像、金钱等!
本帖最后由 冰舞蝶恋 于 2011-3-24 21:07 编辑

这可是咱的废渣型脚本产物Ⅳ咯!最近效率好高啊- -~~【这种渣谁都做得出来吧!!
好了不多说咯,甩截图甩工程上脚本
用法:把头像命名为“头像”放在pictures文件夹下,
大小最好不要超过96*96,否则坐标还得重调,麻烦的够呛
  1. #============================================================================
  2. #  〇 地图显示血条魔条
  3. #              By.冰舞蝶恋
  4. #----------------------------------------------------------------------------
  5. #     说明:显示的文字可自由更动来达到游戏需要的效果。
  6. #----------------------------------------------------------------------------
  7. #     以下是作者的白痴留言,尽管无视吧!
  8. #     啊哈哈!这可是咱第一个独立完成的脚本吖!!
  9. #     一时无聊做的……兴许可以用在ARPG之类的地方吧。偶然看到有不少人在拿RM做
  10. #     ARPG,又发现似乎没有(除了邪恶的fux2字眼的那个- -||b),做了个比较完善
  11. #     的……排版不是很好看,坐标可以自己调整。
  12. #============================================================================
  13. #==============================================================================
  14. # ■ Scene_Map
  15. #------------------------------------------------------------------------------
  16. #  处理地图画面的类。
  17. #==============================================================================

  18. class Scene_Map < Scene_Base
  19.   #--------------------------------------------------------------------------
  20.   # ● 开始处理
  21.   #--------------------------------------------------------------------------
  22.   def start
  23.     super
  24.     $game_map.refresh
  25.     @spriteset = Spriteset_Map.new
  26.     @message_window = Window_Message.new
  27.     @mapz_window = Window_MapZ.new(0, 0)
  28.   end
  29.   #--------------------------------------------------------------------------
  30.   # ● 结束处理
  31.   #--------------------------------------------------------------------------
  32.   def terminate
  33.     super
  34.     @mapz_window.dispose
  35.     if $scene.is_a?(Scene_Battle)     # 切换至战斗场景的场合
  36.       @spriteset.dispose_characters   # 隐藏角色来生成战斗背景
  37.     end
  38.     snapshot_for_background
  39.     @spriteset.dispose
  40.     @message_window.dispose
  41.     if $scene.is_a?(Scene_Battle)     # 切换至战斗场景的场合
  42.       perform_battle_transition       # 执行战斗渐变
  43.     end
  44.   end
  45.   #--------------------------------------------------------------------------
  46.   # ● 基本更新处理
  47.   #--------------------------------------------------------------------------
  48.   def update_basic
  49.     Graphics.update                   # 更新游戏画面
  50.     Input.update                      # 更新输入信息
  51.     $game_map.update                  # 更新地图
  52.     @spriteset.update                 # 更新活动块组
  53.   end
  54.   #--------------------------------------------------------------------------
  55.   # ● 更新画面
  56.   #--------------------------------------------------------------------------
  57.   def update
  58.     super
  59.     $game_map.interpreter.update      # 更新解释器
  60.     $game_map.update                  # 更新地图
  61.     $game_player.update               # 更新主角
  62.     $game_system.update               # 更新计时器
  63.     @mapz_window.update
  64.     @spriteset.update                 # 更新活动块组
  65.     @message_window.update            # 更新信息窗口
  66.     unless $game_message.visible      # 信息窗口显示中除外
  67.       update_transfer_player
  68.       update_encounter
  69.       update_call_menu
  70.       update_call_debug
  71.       update_scene_change
  72.     end
  73.   end
  74. end
  75. class Window_MapZ < Window_Base
  76.   #--------------------------------------------------------------------------
  77.   # ● 初始化对像
  78.   #--------------------------------------------------------------------------
  79.   def initialize(x,y)
  80.     super(-12, -12, 544+16,416+16)
  81.     self.opacity = 0
  82.     update
  83.   end
  84.   #--------------------------------------------------------------------------
  85.   # ● 刷新
  86.   #--------------------------------------------------------------------------
  87.   def update
  88.     self.contents.clear
  89.     $game_map.screen.pictures[1].show("头像", 0, 0, 0, 100, 100, 255, 0)
  90.     draw_actor_hp($game_actors[1], 80+12, 0, 160)
  91.     draw_actor_mp($game_actors[1], 80+12, 32, 160)
  92.     self.contents.font.color = normal_color
  93.     self.contents.draw_text(84+12, 52+8, 544, WLH, "#{$game_actors[1].name}  Lv.#{$game_actors[1].level}")
  94.     self.contents.font.color = system_color
  95.     self.contents.draw_text(0+96+120+40, 0-4, 544, WLH, "攻:")
  96.     self.contents.draw_text(0+96+120+40, 22-4, 544, WLH, "防:")
  97.     self.contents.draw_text(0+96+120+40, 44-4, 544, WLH, "法:")
  98.     self.contents.draw_text(0+96+120+40, 66-4, 544, WLH, "敏:")
  99.     self.contents.draw_text(0+96+120+96+40, 0-4, 544, WLH, "所持金钱:")
  100.     self.contents.draw_text(-18, 22-4, 544, WLH, "G", 2)
  101.     self.contents.font.color = normal_color
  102.     self.contents.draw_text(-456+96+120+40, 0-4, 544, WLH, $game_actors[1].atk, 2)
  103.     self.contents.draw_text(-456+96+120+40, 22-4, 544, WLH, $game_actors[1].def, 2)
  104.     self.contents.draw_text(-456+96+120+40, 44-4, 544, WLH, $game_actors[1].spi, 2)
  105.     self.contents.draw_text(-456+96+120+40, 66-4, 544, WLH, $game_actors[1].cri, 2)
  106.     self.contents.draw_text(-36, 22-4, 544, WLH, $game_party.gold, 2)   
  107.   end
  108. end
复制代码

地图血魔条.rar (265.34 KB, 下载次数: 4515)
作者: haoxian666    时间: 2011-3-25 00:15
超赞,刚好现在的游戏用得到。
3Q~
作者: 无名小兵    时间: 2011-3-25 00:51

ARPG可用的好东西
作者: 天翔风舞    时间: 2011-3-25 08:56
问题来了呵呵……麻烦冰舞LOOK一下……



呃……注释是偶为了方便加的……内行的高人请无视

1、当我要显示全体队员的状态时,第一、二个红框内的内容是否可以复制添加到下边?如:
    $game_map.screen.pictures[2].show("头像2", 0, 35, 5, 50, 50, 255, 0)
       draw_actor_hp($game_actors[2], 80, 0, 80)    #描绘HP条,x,y,长度
    draw_actor_mp($game_actors[2], 80, 25, 80)   #描绘SP条,x,y,长度

    self.contents.draw_text(30, 50, 200, WLH, "#{$game_actors[2].name}  Lv.#{$game_actors[2].level}")

2、即使我添加了,头像图片是不是无法随着队员的更换而更换?因为您没写描绘头像变量的句子……我猜测……呃……
如,第二个人我添加了,但是必须是固定的,否则换了队员也无法更换头像图片?(因为是指定的图片)

3、第三、我不想直接显示攻敏法防及金钱,是否直接删除第三个蓝框内的内容就可以?

以上……还望冰舞大多多赐教……
作者: 冰舞蝶恋    时间: 2011-3-25 09:44
回复 天翔风舞 的帖子

1.是的,中间那段也要复制吖。还有最开始那个self句不用。要自己调坐标,$game_actors[1]要分别改成2,3,4。
2.可以把“头像”改为$game_actors[1].name,这样在文件夹中的图片是用“拉尔夫”命名;或者你可以把所有$game_actors[1]换成$game_party.members[0],这个是队伍第一人,队伍第二人则是[1]。。不知道咱讲清楚了没有?咱还是脚盲阶段,不要叫大。
3.嗯,是的,除了删除篮框内的代码,还可删除上面那行self.contents.font.color = system.color。

作者: summer92    时间: 2011-3-25 10:10
不错,不错,很给力
作者: DeathKing    时间: 2011-3-25 12:54
当然可以考虑再美化一下布局,XAS的那个HUD就做得不错{:nm_4:}
作者: 天翔风舞    时间: 2011-3-25 17:39
报告BUG:当使用该脚本时,所有“显示图片”的事件中的图片将被屏蔽,所有其他图片将不再显示!
作者: 冰舞蝶恋    时间: 2011-3-25 17:41
回复 天翔风舞 的帖子

那是因为我显示的头像是用显示图片的方式的,事件显示图片,编号不要为1就行了
作者: 天翔风舞    时间: 2011-3-25 21:34
呃……调来调去终于对上了……其实坐标这东西就是耗费精力和耐心……



本人坑作得以鸟枪换炮……多谢冰舞MM


作者: 冰舞蝶恋    时间: 2011-3-25 23:00
回复 天翔风舞 的帖子

呵呵,你的很华丽喔!
作者: DeathKing    时间: 2011-3-26 10:16
回复 天翔风舞 的帖子

http://rpg.blue/forum.php?mod=vi ... 7&fromuid=11686

菜单的设计,无论使用脚本还是事件,但要求工程需要公开,同时也允许只放出设计图

只要提供足够多的素材,或许会有人帮你实现。
作者: daipeng76    时间: 2011-3-26 15:19
不错,正需要,抱走了
作者: 越前リョーマ    时间: 2011-3-27 00:28
地图上显示这么个东西还真没美感 = =
作者: 冰舞蝶恋    时间: 2011-3-27 13:27
越前リョーマ 发表于 2011-3-27 00:28
地图上显示这么个东西还真没美感 = =

不带这么攻击人的啊!
作者: 一瞬间的幻觉    时间: 2011-3-28 05:59
真好有用到呢~~
谢谢小冰姐
作者: 炎影者    时间: 2011-3-31 13:38
这个可以有~~支持
作者: liweiliniu    时间: 2011-4-11 12:17
能不能设一个开关让那个显示在片头时取消啊,冰姐?
作者: 冰舞蝶恋    时间: 2011-4-13 22:09
回复 liweiliniu 的帖子

脚本已完工~
其实很容易的~
  1. #============================================================================
  2. #  〇 地图显示血条魔条
  3. #    (应liweiliniu求开关专版)
  4. #                   ——By.冰舞蝶恋
  5. #----------------------------------------------------------------------------
  6. #     说明:显示的文字可自由更动来达到游戏需要的效果。
  7. #----------------------------------------------------------------------------
  8. #     以下是作者的白痴留言,尽管无视吧!
  9. #     啊哈哈!这可是咱第一个独立完成的脚本吖!!
  10. #     一时无聊做的……兴许可以用在ARPG之类的地方吧。偶然看到有不少人在拿RM做
  11. #     ARPG,又发现似乎没有(除了邪恶的fux2字眼的那个- -||b),做了个比较完善
  12. #     的……排版不是很好看,坐标可以自己调整。
  13. #============================================================================
  14. $LBA = 1  # 当这个开挂开启时,地图状态才显示。
  15. #==============================================================================
  16. # ■ Scene_Map
  17. #------------------------------------------------------------------------------
  18. #  处理地图画面的类。
  19. #==============================================================================

  20. class Scene_Map < Scene_Base
  21.   #--------------------------------------------------------------------------
  22.   # ● 开始处理
  23.   #--------------------------------------------------------------------------
  24.   def start
  25.     super
  26.     $game_map.refresh
  27.     @spriteset = Spriteset_Map.new
  28.     @message_window = Window_Message.new
  29.     @mapz_window = Window_MapZ.new(0, 0)
  30.   end
  31.   #--------------------------------------------------------------------------
  32.   # ● 结束处理
  33.   #--------------------------------------------------------------------------
  34.   def terminate
  35.     super
  36.     @mapz_window.dispose
  37.     if $scene.is_a?(Scene_Battle)     # 切换至战斗场景的场合
  38.       @spriteset.dispose_characters   # 隐藏角色来生成战斗背景
  39.     end
  40.     snapshot_for_background
  41.     @spriteset.dispose
  42.     @message_window.dispose
  43.     if $scene.is_a?(Scene_Battle)     # 切换至战斗场景的场合
  44.       perform_battle_transition       # 执行战斗渐变
  45.     end
  46.   end
  47.   #--------------------------------------------------------------------------
  48.   # ● 基本更新处理
  49.   #--------------------------------------------------------------------------
  50.   def update_basic
  51.     Graphics.update                   # 更新游戏画面
  52.     Input.update                      # 更新输入信息
  53.     $game_map.update                  # 更新地图
  54.     @spriteset.update                 # 更新活动块组
  55.   end
  56.   #--------------------------------------------------------------------------
  57.   # ● 更新画面
  58.   #--------------------------------------------------------------------------
  59.   def update
  60.     super
  61.     $game_map.interpreter.update      # 更新解释器
  62.     $game_map.update                  # 更新地图
  63.     $game_player.update               # 更新主角
  64.     $game_system.update               # 更新计时器
  65.     @mapz_window.update
  66.     @spriteset.update                 # 更新活动块组
  67.     @message_window.update            # 更新信息窗口
  68.     unless $game_message.visible      # 信息窗口显示中除外
  69.       update_transfer_player
  70.       update_encounter
  71.       update_call_menu
  72.       update_call_debug
  73.       update_scene_change
  74.     end
  75.   end
  76. end
  77. class Window_MapZ < Window_Base
  78.   #--------------------------------------------------------------------------
  79.   # ● 初始化对像
  80.   #--------------------------------------------------------------------------
  81.   def initialize(x,y)
  82.     super(-12, -12, 544+16,416+16)
  83.     self.opacity = 0
  84.     update
  85.   end
  86.   #--------------------------------------------------------------------------
  87.   # ● 刷新
  88.   #--------------------------------------------------------------------------
  89.   def update
  90.   if $game_switches[$LBA] == true
  91.     self.contents.clear
  92.     $game_map.screen.pictures[1].show("头像", 0, 0, 0, 100, 100, 255, 0)
  93.     draw_actor_hp($game_actors[1], 80+12, 0, 160)
  94.     draw_actor_mp($game_actors[1], 80+12, 32, 160)
  95.     self.contents.font.color = normal_color
  96.     self.contents.draw_text(84+12, 52+8, 544, WLH, "#{$game_actors[1].name}  Lv.#{$game_actors[1].level}")
  97.     self.contents.font.color = system_color
  98.     self.contents.draw_text(0+96+120+40, 0-4, 544, WLH, "攻:")
  99.     self.contents.draw_text(0+96+120+40, 22-4, 544, WLH, "防:")
  100.     self.contents.draw_text(0+96+120+40, 44-4, 544, WLH, "法:")
  101.     self.contents.draw_text(0+96+120+40, 66-4, 544, WLH, "敏:")
  102.     self.contents.draw_text(0+96+120+96+40, 0-4, 544, WLH, "所持金钱:")
  103.     self.contents.draw_text(-18, 22-4, 544, WLH, "G", 2)
  104.     self.contents.font.color = normal_color
  105.     self.contents.draw_text(-456+96+120+40, 0-4, 544, WLH, $game_actors[1].atk, 2)
  106.     self.contents.draw_text(-456+96+120+40, 22-4, 544, WLH, $game_actors[1].def, 2)
  107.     self.contents.draw_text(-456+96+120+40, 44-4, 544, WLH, $game_actors[1].spi, 2)
  108.     self.contents.draw_text(-456+96+120+40, 66-4, 544, WLH, $game_actors[1].cri, 2)
  109.     self.contents.draw_text(-36, 22-4, 544, WLH, $game_party.gold, 2)
  110.   else
  111.     $game_map.screen.pictures[1].erase
  112.     self.contents.clear
  113.   end
  114.   end
  115. end
复制代码

作者: 忧雪の伤    时间: 2011-4-30 19:32
嘛,可以考虑不用系统的显示图片吗?完全可以重建一个sprite类来显示的。
然后……map的修改可以改成alias吗……否则基本和其他脚本兼容不起。
作者: Susie高_ELF    时间: 2011-5-8 18:32
好东西~
现在正在找捏~
作者: 黑之翅膀    时间: 2011-6-24 21:37
额,出问题了,我用了这个脚本之后不能显示图片,希望帮个忙
作者: fux2    时间: 2011-6-24 22:34
直接重定义真的大丈夫么?
作者: 冰舞蝶恋    时间: 2011-6-25 13:26
黑之翅膀 发表于 2011-6-24 21:37
额,出问题了,我用了这个脚本之后不能显示图片,希望帮个忙

您好,显示图片的时候请将图片编号设定为2或2以上的数字即可。
作者: 黑之翅膀    时间: 2011-7-8 21:28
冰舞蝶恋 发表于 2011-6-25 13:26
您好,显示图片的时候请将图片编号设定为2或2以上的数字即可。

谢谢 解决了
作者: a88953327    时间: 2011-11-9 18:26
我做不出来 脚本给我看 我也看不懂
作者: 凡尘过客    时间: 2011-11-25 08:20
膜拜楼主。。。
作者: 红十字    时间: 2011-12-4 12:24
哦也,好东西啊。谢谢啦
作者: 345912390    时间: 2012-3-22 20:34
@冰舞蝶恋
问一下,这个怎样改成显示队长模式  即当队长 换人时 显示也改变!!
作者: 冰舞蝶恋    时间: 2012-3-22 20:54
345912390 发表于 2012-3-22 20:34
@冰舞蝶恋
问一下,这个怎样改成显示队长模式  即当队长 换人时 显示也改变!! ...

把脚本里所有的"$game_actors[1]"全部替换成"$game_party.members[0]"就可以了。
作者: edwingame    时间: 2012-4-2 16:18
非常好用
作者: 八宝粥先生    时间: 2012-4-2 17:58
这么好的东西怎么不排一下版?
这样子光秃秃的白色的很怪异诶...
作者: [email protected]    时间: 2012-4-12 14:14
那个怎么弄才只显示队伍中有的角色呢!



‘‘──[email protected]于2012-4-12 20:21补充以下内容

那个我改了可是提示错误{:5_159:}{:2_271:}  可不可以帮我改改啊{:5_162:}
’’
作者: q6625765    时间: 2012-5-19 21:48
刚好用到
作者: angelkoyou    时间: 2013-2-16 16:38
谢谢楼主分享~~!!!
作者: 945127391    时间: 2013-2-17 23:14
一个建议……大大别说我扯……
refresh方法的super下面可以添一句:
  1. actor = $game_actors[1]
复制代码
然后把后面的那些$game_actors[1]全部换成actor
这样的话,如果要改显示其他角色(比如显示领队)就只用改一句话,方便多了。
欢迎来玩(虽然没写完) 【众:喂!别卖广告!】
作者: 1142881837    时间: 2013-2-23 19:57
这个血魔条显示太大了,求求帮忙调小点,调小后发给我脚本
  感谢啦!!!!
作者: ooii    时间: 2013-7-22 20:25
一运行就出错,请问一下这个怎么解决啊?

QF (17.22 KB, 下载次数: 54)

QF





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