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

Project1

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

[已经解决] 关于vocab,战斗结束界面信息显示相关的问题求助

[复制链接]

Lv2.观梦者

梦石
0
星屑
428
在线时间
211 小时
注册时间
2011-4-16
帖子
72
跳转到指定楼层
1
发表于 2014-10-29 02:11:35 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 swbsl 于 2014-10-29 02:17 编辑






如图所示。 图一图二的“等级”显示相关已经修改好了。
图三和图四的,战斗结算“等级”提升所显示的字符串,LevelUp="%s的%s提升到了 %s!"  这句,不知道该怎么把自己的代码套进去了。最后一次出现的 %s 取的值是在什么位置定义的?
level_a 这项,我翻看了全部脚本,就只有 Window_Base 类 460行左右 “绘制等级” 的 draw_actor_level()函数   有调用到。
draw_text(x, y, 32, line_height, Vocab::level_a) 但是不太明白,貌似没用?


再次无耻的求大厨指点,千言万语都抵不过“感谢”二字!


感谢!!!


PS:  "益己 1"  字符串的大小在哪里定义?

Lv2.观梦者

梦石
0
星屑
428
在线时间
211 小时
注册时间
2011-4-16
帖子
72
4
 楼主| 发表于 2014-10-29 10:06:11 | 只看该作者
VIPArcher 发表于 2014-10-29 09:23
这个是sprintf 格式
具体内容可以参考F1文档附录的最后一篇。看了你就懂了。
然后你只要改一改脚本就可以了 ...

代码测试无异常,已达到需求效果。
多谢版主的指点!   这贴可以结了。

点评

明白。 之前学过一点点java的皮毛,所以就倔着脾气想试试不去学ruby的知识能搞懂多少。。。 再次感谢!  发表于 2014-10-29 10:37
学脚本的话多看看F1。  发表于 2014-10-29 10:08
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

无限の剣制

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

开拓者贵宾

3
发表于 2014-10-29 09:23:26 | 只看该作者
本帖最后由 VIPArcher 于 2014-10-29 10:23 编辑

这个是sprintf 格式
具体内容可以参考F1文档附录的最后一篇。看了你就懂了。
然后你只要改一改脚本就可以了

  1. 还有"益己 1"  字符串变小是因为宽度不够,被压缩了,
  2. draw_text(x, y, 宽度, line_height, Vocab::level_a) #把宽度修改到合适的值就可以了
  3. class Game_Actor < Game_Battler
  4.   #--------------------------------------------------------------------------
  5.   # ● 生成境界函数
  6.   #--------------------------------------------------------------------------
  7.   def lv_ch(level_jj)
  8.     jingjie = ["益己 ","互助 ","慈悲 ","忘我 ","超脱 ","神 "]
  9.     if level_jj > 0 && level_jj < 21
  10.       return jingjie[0]+level_jj.to_s
  11.     elsif level_jj > 20 && level_jj < 41
  12.       return jingjie[1]+(level_jj-20).to_s
  13.     elsif level_jj > 40 && level_jj < 61
  14.       return jingjie[2]+(level_jj-40).to_s
  15.     elsif level_jj > 60 && level_jj < 81
  16.       return jingjie[3]+(level_jj-60).to_s
  17.     elsif level_jj > 80 && level_jj <= 99
  18.       return jingjie[4]+(level_jj-80).to_s
  19.     else
  20.       return jingjie[5]
  21.     end
  22.   end
  23.   #--------------------------------------------------------------------------
  24.   # ● 显示等级上升的信息
  25.   #     new_skills : 学会的新技能的数组
  26.   #--------------------------------------------------------------------------
  27.   def display_level_up(new_skills)
  28.     $game_message.new_page
  29.     $game_message.add(sprintf(Vocab::LevelUp, @name, Vocab::level,lv_ch(@level)))
  30.     new_skills.each do |skill|
  31.       $game_message.add(sprintf(Vocab::ObtainSkill, skill.name))
  32.     end
  33.   end
  34. end
复制代码
其实你可以这样来定义
以上未测试

点评

第二种代码编写格式相较我之前那个要工整得多,属编程之美学范畴。收下了。  发表于 2014-10-29 10:43

评分

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

查看全部评分

回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
428
在线时间
211 小时
注册时间
2011-4-16
帖子
72
2
 楼主| 发表于 2014-10-29 02:14:30 | 只看该作者
顺便贴上脚本。。。如果,我是说如果。如果有人能用的到,就拿去吧。
  1. class Window_Base < Window  
  2.     #--------------------------------------------------------------------------
  3.   # ● 生成境界函数
  4.   #--------------------------------------------------------------------------
  5.   def lv_ch(level_jj)
  6.     jingjie = ["益己 ","互助 ","慈悲 ","忘我 ","超脱 ","神 "]
  7.     if level_jj > 0 && level_jj < 21
  8.       return jingjie[0]+level_jj.to_s
  9.     elsif level_jj > 20 && level_jj < 41
  10.       return jingjie[1]+(level_jj-20).to_s
  11.     elsif level_jj > 40 && level_jj < 61
  12.       return jingjie[2]+(level_jj-40).to_s
  13.     elsif level_jj > 60 && level_jj < 81
  14.       return jingjie[3]+(level_jj-60).to_s
  15.     elsif level_jj > 80 && level_jj <= 99
  16.       return jingjie[4]+(level_jj-80).to_s
  17.     else
  18.       return jingjie[5]
  19.       end
  20.     end
  21.   #--------------------------------------------------------------------------
  22.   # ● 绘制等级
  23.   #--------------------------------------------------------------------------
  24.   def draw_actor_level(actor, x, y)
  25.     change_color(system_color)
  26.     draw_text(x, y, 32, line_height, Vocab::level_a)#level_a:资质
  27.     change_color(normal_color)
  28.     draw_text(x + 32, y, 38, line_height, lv_ch(actor.level), 2)
  29.   end
  30. end
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-6 18:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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