您现在看到的是 66RPG.com 的资源列表,若这些对您有帮助,
希望您以充值论坛VIP点数的方式为我们捐款,
您的捐款将用于本站的三台服务器托管费,以及网通100M带宽的租金

66RPG充值页面 66RPG充值页面

最近更新记录

  • 2012-02-14 : 新增两个音乐素材
  • 2012-02-14 : 新增一个游戏资源
  • 2012-02-10 : 新增3个素材资源
  • 2012-02-09 : 新增/更新16个资源

66RPG 站内搜索

精确(推荐) 全文

本站收集内容是为了便于让游戏制作爱好者互相学习与交流,所有内容的版权与著作权均归原作者/公司所有。如进行有可能引起纠纷的使用,建议您先与原作方沟通。
物品技能介绍加强(多行显示)
更新:2012-01-27 10:34:18 | 点击量:1038
物品技能介绍加强(多行显示)
教程作者:gpra8764
脚本将Window_Help从单行显示改成三行显示,满足物品说明文字比较多需要换行的需要

脚本将Window_Help(物品/技能介绍窗口,帮助窗口)从单行显示改成三行显示,满足物品说明文字比较多需要换行的需要。书写物品/技能说明时使用"\n"来进行换行。
因为这个脚本更改了物品/技能介绍窗口的大小,所以需要变动大量窗口坐标。脚本在尽量不破坏原来窗口布局的前提下进行修改,以下首先罗列出所有需要变动坐标的模块:

Window_Skill 初始化initialize过程中:
super(0, 192, 640, 288)
# 战斗中的情况下将窗口移至中央并将其半透明化
if $game_temp.in_battle
self.y = 128
self.height = 192
self.back_opacity = 160
end

Window_SkillStatus 初始化initialize过程中
super(0, 128, 640, 64)

Window_Item 初始化initialize过程中
super(0, 128, 640, 352)
# 战斗中的情况下将窗口移至中央并将其半透明化
if $game_temp.in_battle
self.y = 128
self.height = 192
self.back_opacity = 160
end

Window_EquipLeft 初始化initialize过程中
super(0, 128, 272, 192)

Window_EquipRight 初始化initialize过程中
super(272, 128, 368, 192)

Window_EquipItem 初始化initialize过程中
super(0, 320, 640, 160)

Window_ShopCommand 初始化initialize过程中
super(0, 128, 480, 64)

Window_ShopBuy 初始化initialize过程中
super(0, 192, 368, 288)

Window_ShopSell 初始化initialize过程中
super(0, 192, 640,288)

Window_ShopNumber 初始化initialize过程中
super(0, 192, 368, 288)

Window_ShopStatus 初始化initialize过程中
super(368, 192, 272, 288)

Scene_Shop 主要main过程中

# 生成金钱窗口
@gold_window = Window_Gold.new
@gold_window.x = 480
@gold_window.y = 128
# 生成时间窗口(注:这里是空窗口……翻译过来是时间窗口不明白为什么……)
@dummy_window = Window_Base.new(0, 192, 640, 288)

Scene_File 主要main过程中

# 生成帮助窗口
@help_window = Window_Help.new
@help_window.height = 64

然后,删除原来的Window_Help脚本块,添加新的脚本块GPRA_Window_Help
补充:
发现一个比较严重的问题,不知道为什么没有人发现……
记录的时候那个标题框会很诡异……请做以下更改……

方法1
Scene_File 主要main过程中

# 生成帮助窗口
@help_window = Window_Help.new
@help_window.height = 64
# 这里加一句
@help_window.contents.x=-32


方法2(可能好一点)
Ctrl+Shift+F寻找标题栏的字串作成过程,搜索的字串是"文件",然后在后面写个+"\n\n",因为增加了上下自动对齐功能,所以要在首行显示文字只能这样……
 
脚本内容

#==============================================================================
# ◎ GPRA_Window_Help
#------------------------------------------------------------------------------
# ◎ 特技及物品的说明、角色的状态显示的窗口加强。
#------------------------------------------------------------------------------
# 制作者:绿梨子红苹果
# 个人主页:vbgm.9126.com
# E-Mail:xhy.01@163.com
# QQ:42378361
#==============================================================================

class Window_Help < Window_Base
 #--------------------------------------------------------------------------
 # ● 初始化对像
 #--------------------------------------------------------------------------
 def initialize
   super(0, 0, 640, 128)
   self.contents = Bitmap.new(width - 32, height - 32)
 end
 #--------------------------------------------------------------------------
 # ● 设置文本
 #     text  : 窗口显示的字符串
 #     align : 对齐方式
 #--------------------------------------------------------------------------
 def set_text(text, align = 0)
   # 如果文本和对齐方式的至少一方与上次的不同
   if text != @text or align != @align
     # 清空原来的文字内容
     self.contents.clear
     # 设置颜色为默认颜色
     self.contents.font.color = normal_color
     # 定义变量记录文字行数
     l=0
     # 定义数组分别记录每行文字内容
     s=["","",""]
     # 利用临时变量存储text内容
     temp=text.dup
     # 首先处理文本,将"\\n"全部替换成换行符"\n"
     temp.gsub!(/\\n/) { "\n" }
     # c 获取 1 个字 (如果不能取得文字就退出循环)
     while ((c = temp.slice!(/./m)) != nil)
       # 另起一行文字的情况下
       if c == "\n"
         # 当超过3行时(0行开始,所以这里是2)
         if l >= 2
           # 退出循环体
           break
         end
         # 否则l自增1
         l += 1
       end
       # 不是换行符的其他情况
       s[l]=s[l]+c
     end
     # 根据文字的行数进行不同的绘制
     case l
     when 0
       self.contents.draw_text(4, 32, self.width - 40, 32, s[0], align)
     when 1
       self.contents.draw_text(4, 16, self.width - 40, 32, s[0], align)
       self.contents.draw_text(4, 48, self.width - 40, 32, s[1], align)
     when 2
       self.contents.draw_text(4, 0, self.width - 40, 32, s[0], align)
       self.contents.draw_text(4, 32, self.width - 40, 32, s[1], align)
       self.contents.draw_text(4, 64, self.width - 40, 32, s[2], align)
     end
     # 保存此次绘图时的参数值
     @text = text
     @align = align
     @actor = nil
   end
   # 可见状态为真
   self.visible = true
 end
 #--------------------------------------------------------------------------
 # ● 设置角色
 #     actor : 要显示状态的角色
 #--------------------------------------------------------------------------
 def set_actor(actor)
   if actor != @actor
     self.contents.clear
     draw_actor_name(actor, 4, 0)
     draw_actor_state(actor, 140, 0)
     draw_actor_hp(actor, 284, 0)
     draw_actor_sp(actor, 460, 0)
     @actor = actor
     @text = nil
     self.visible = true
   end
 end
 #--------------------------------------------------------------------------
 # ● 设置敌人
 #     enemy : 要显示名字和状态的敌人
 #--------------------------------------------------------------------------
 def set_enemy(enemy)
   text = enemy.name
   state_text = make_battler_state_text(enemy,false)
   if state_text != ""
     text += " " + state_text
   end
   set_text(text, 1)
 end
end

搜到一些相关内容,看看有没有有用的:

教程 : 自定义多货币脚本教程 : 个性化商店教程 : 跟隨光标自修正位置的详细帮助窗..教程 : vx新菜单样式教程 : vx新截图存档素材 : 《炼金术士梅露露~亚兰德的炼金..教程 : 显示ARPG用的窗口教程 : 新人入门录像1 初识RMXP游戏 : 赠予新手们的修改脚本的教程教程 : 大地图制作教程教程 : KKME整合系统教程 : 2种敌人战斗新的死法- -||..教程 : 人物能力状态图的多边形网状绘制教程 : 美化的动态选项窗口游戏 : 《OZ大乱斗:梦想与传说的延续..教程 : PS去行走图底色教程教程 : 日夜控制系统完美版教程 : 神秘羊皮纸教程 : RM反沉迷系统教程 : 动态选项光标教程 : 用流星当板擦,擦出Title标..教程 : 数据包的制作、加密以及解压运行教程 : 物品技能介绍加强(多行显示)教程 : ikki的敌人等级设定教程教程 : 显示对话人物头像教程 : 截图+档位扩展50+存档提示+..教程 : 使用自带字体[功能完善]教程 : fuki对话框(又名呼出对话框..教程 : RMXP在游戏运行中制作事件教程 : 行走图横版战斗-改进版

没找到你想要的?可以使用搜索功能 ↓

66RPG 站内搜索

精确(推荐) 全文

评论啦