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

Project1

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

[已经解决] 如何将原本的图鉴脚本改成这种样式?

[复制链接]

Lv2.观梦者

梦石
0
星屑
325
在线时间
252 小时
注册时间
2014-4-11
帖子
265
跳转到指定楼层
1
发表于 2016-11-24 09:48:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 眼中目之瞳 于 2016-11-25 12:46 编辑

https://rpg.blue/forum.php?mod=v ... p;extra=&page=1


的敌人图鉴,在回复中出现的另一种样式,不过暂时没有放出脚本(这一暂就是……4年- -b)
怎样才能改成他的样式呢?
改了一个MP问题的文件:
Project1.rar (1.43 MB, 下载次数: 82)
魔物图鉴说明文


评分

参与人数 1星屑 +50 收起 理由
RaidenInfinity + 50 结帖

查看全部评分

Lv4.逐梦者 (版主)

无限の剣制

梦石
0
星屑
10074
在线时间
5020 小时
注册时间
2013-2-28
帖子
5030

开拓者贵宾

2
发表于 2016-11-25 11:38:25 | 只看该作者
本帖最后由 VIPArcher 于 2016-11-25 11:39 编辑
  1. class Window_EnemyDetail < Window_Base
  2.   alias vip20161125_initialize initialize
  3.   def initialize
  4.     vip20161125_initialize
  5.     self.x,self.width = 0,Graphics.width
  6.     create_contents; deactivate
  7.   end
  8.   #--------------------------------------------------------------------------
  9.   # ● 窗口半刷新(这个绘制的部分最好自己从新改一下坐标什么的)
  10.   #--------------------------------------------------------------------------
  11.   def partial_refresh
  12.     return unless @enemy # 无敌人时返回
  13.     rect = Rect.new(ENEMY_IMAGE_MAX_WIDTH+8, 0,
  14.       contents.width-(ENEMY_IMAGE_MAX_WIDTH+8), contents.height-line_height)
  15.     contents.clear_rect(rect)
  16.     if ENEMY_MORE_INFO && @partial
  17.       Sound.play_cursor
  18.       draw_other_info
  19.       @partial = false
  20.     else
  21.       draw_enemy_hp(ENEMY_IMAGE_MAX_WIDTH+8, 0) # 绘制敌人体力
  22.       draw_enemy_mp(ENEMY_IMAGE_MAX_WIDTH+8, line_height) # 绘制敌人魔力
  23.       2.upto(7){ |n|
  24.         draw_enemy_param(ENEMY_IMAGE_MAX_WIDTH+8, line_height*n, n) # 绘制敌人能力
  25.       }
  26.       draw_enemy_gold(ENEMY_IMAGE_MAX_WIDTH+8, line_height*8) # 绘制敌人掉落金
  27.       draw_enemy_item(ENEMY_IMAGE_MAX_WIDTH+8, line_height*9) # 绘制敌人掉落物
  28.       @partial = true
  29.     end
  30.   end
  31. end
  32. class Window_EnemyList < Window_ItemList
  33.   alias vip20161125_initialize initialize
  34.   def initialize(*args)
  35.     vip20161125_initialize(*args)
  36.     self.width = Graphics.width
  37.   end
  38.   def col_max; 4 end
  39.   #--------------------------------------------------------------------------
  40.   # ● 获取选择项目的有效状态
  41.   #--------------------------------------------------------------------------
  42.   def current_item_enabled?
  43.     $TEST || $game_party.enemy_percent(item.id) > 0
  44.   end
  45. end
  46. class Scene_List < Scene_Base
  47.   alias vip20161125_create_list_window create_list_window
  48.   def create_list_window
  49.     vip20161125_create_list_window
  50.     @list_window.set_handler(:ok, method(:on_list_ok))
  51.   end
  52.   alias vip20161125_create_detail_window create_detail_window
  53.   def create_detail_window
  54.     vip20161125_create_detail_window
  55.     @detail_window.hide
  56.   end
  57.   #打开列表确定的敌人图鉴
  58.   def on_list_ok
  59.     @list_window.deactivate
  60.     @list_window.hide
  61.     @detail_window.activate
  62.     @detail_window.show
  63.   end
  64.   #敌人图鉴内容窗口取消
  65.   def on_detail_cancel
  66.     @list_window.activate
  67.     @list_window.show
  68.     @detail_window.deactivate
  69.     @detail_window.hide
  70.   end
  71.   #--------------------------------------------------------------------------
  72.   # ● 场景更新 (Window_EnemyDetail继承的是Window_Base所以只好覆盖了)
  73.   #--------------------------------------------------------------------------
  74.   def update
  75.     super
  76.     return unless @detail_window.active
  77.     on_list_partial_refersh if Input.trigger?(ENEMY_MORE_INFO_BUTTON)
  78.     enemy_percent_change(:left) if Input.trigger?(:LEFT)
  79.     enemy_percent_change(:right) if Input.trigger?(:RIGHT)
  80.     on_detail_cancel if Input.trigger?(:B)
  81.   end
  82.   #--------------------------------------------------------------------------
  83.   # ● 更改敌人辨识度百分比(仅游戏测试时可用)
  84.   #--------------------------------------------------------------------------
  85.   def enemy_percent_change(sym)
  86.     return unless $TEST
  87.     return unless @detail_window.active
  88.     enemy = @detail_window.enemy
  89.     return unless enemy
  90.     $game_party.see_enemy(enemy.id, TEST_PERCENT) if sym == :right
  91.     $game_party.see_enemy(enemy.id, -TEST_PERCENT) if sym == :left
  92.     @list_window.refresh
  93.     @detail_window.enemy = enemy
  94.   end
  95. end
复制代码

你要的补丁,敌人图鉴窗口里面的信息绘制大概需要重新排版一下,我觉得你可以自己做到,努力试试吧

点评

找到其他人留下的方法了~~  发表于 2016-11-25 12:45
可以用正则匹配备注栏,你可以试试看自己写个绘制。  发表于 2016-11-25 12:06
不过对敌人的说明还没有……  发表于 2016-11-25 11:55
感谢  发表于 2016-11-25 11:50

评分

参与人数 1梦石 +1 收起 理由
RaidenInfinity + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 01:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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