Project1

标题: 等级问题 [打印本页]

作者: wxj541374210    时间: 2012-1-26 20:33
标题: 等级问题
本帖最后由 wxj541374210 于 2012-1-26 20:34 编辑

我想让不同的等级有等级的不同名称,如:
1~10级名为“低级”,1级为低级1级,2级为“低级2级”.......................等
11~20名为“中级”,11级为中级1级,12级为“中级2级”..................................等
注:其中的等级名称指的并不是人物名称,而是等级的名称dsu_plus_rewardpost_czw
作者: 双叶GL    时间: 2012-1-27 01:09
- -你想显示在什么地方,{:nm_1:}
作者: 帅气的袋鼠    时间: 2012-1-27 01:36
脚本Window_Base,第141-146行,改成以下的脚本...
  1.   def draw_actor_level(actor, x, y)
  2.     self.contents.font.color = system_color
  3.     self.contents.draw_text(x, y, 32, 32, "Lv")
  4.     self.contents.font.color = normal_color
  5.     if actor.level<=10
  6.       self.contents.draw_text(x + 17, y, 108, 32, "低级"+actor.level.to_s+"级", 2)
  7.     else if actor.level<=20
  8.       player_level = actor.level - 10
  9.       self.contents.draw_text(x + 17, y, 108, 32, "中级"+player_level.to_s+"级", 2)
  10.     else if actor.level<=30
  11.       player_level = actor.level - 20
  12.       self.contents.draw_text(x + 17, y, 108, 32, "高级"+player_level.to_s+"级", 2)
  13.     else if actor.level<=40
  14.       player_level = actor.level - 30
  15.       self.contents.draw_text(x + 17, y, 108, 32, "上级"+player_level.to_s+"级", 2)
  16.     else if actor.level<=50
  17.       player_level = actor.level - 40
  18.       self.contents.draw_text(x + 17, y, 108, 32, "天级"+player_level.to_s+"级", 2)
  19.     else if actor.level<=60
  20.       player_level = actor.level - 50
  21.       self.contents.draw_text(x + 17, y, 108, 32, "鬼级"+player_level.to_s+"级", 2)
  22.     else if actor.level<=70
  23.       player_level = actor.level - 60
  24.       self.contents.draw_text(x + 17, y, 108, 32, "魔级"+player_level.to_s+"级", 2)
  25.     else if actor.level<=80
  26.       player_level = actor.level - 70
  27.       self.contents.draw_text(x + 17, y, 108, 32, "王级"+player_level.to_s+"级", 2)
  28.     else if actor.level<=90
  29.       player_level = actor.level - 80
  30.       self.contents.draw_text(x + 17, y, 108, 32, "超级"+player_level.to_s+"级", 2)
  31.     else if actor.level<=99
  32.       player_level = actor.level - 90
  33.       self.contents.draw_text(x + 17, y, 108, 32, "神级"+player_level.to_s+"级", 2)
  34.     end    end    end    end    end    end    end    end    end    end
  35.   end
复制代码
“X级”类的字眼你就自己改了...
只要明白了原理,要自行增减修改是不会难的...

另外在脚本Window_MenuStatus第32行,改成
  1.       draw_actor_state(actor, x + 125, y + 32)
复制代码
以解决字眼位置相叠的问题...

作者: 七夕小雨    时间: 2012-1-27 01:51
本帖最后由 七夕小雨 于 2012-1-27 02:01 编辑

楼上的仁兄是简单的傻办法啊~嘿嘿 我提交一个简单的方法吧

  1. def draw_actor_level(actor, x, y)
  2.     message = ["低级","中级","中级","高级"]#这里添加内容用逗号隔开""中添加内容
  3.     lvText = actor.level/10#计算一下前置等级
  4.     lvNum = actor.level - lvText*10#获得个位数等级
  5.     textWidth = 64#这个是前置等级的文字宽度
  6.     self.contents.font.color = system_color
  7.     if lvText>message.size
  8.       #这里是保护判定,如果你的等级超出了你设定的几个前置项,则会现实最后一个设定的文字内容
  9.       self.contents.draw_text(x, y, textWidth, 32,message[message.size-1])
  10.     else
  11.       self.contents.draw_text(x, y, textWidth, 32,message[lvText])
  12.     end
  13.     self.contents.font.color = normal_color
  14.     self.contents.draw_text(x + 32, y, 24, 32, lvNum.to_s, 2)
  15.   end
复制代码

作者: wxj541374210    时间: 2012-1-27 16:01
本帖最后由 wxj541374210 于 2012-1-27 19:22 编辑
七夕小雨 发表于 2012-1-27 01:51
楼上的仁兄是简单的傻办法啊~嘿嘿 我提交一个简单的方法吧


你这个是不错,但是最后的“级”字怎么省掉了呢?
还有,这个的第11行有错误
---------------------------------------------------------------------------------------
袋鼠大哥,由于我换了个菜单,你显示的等级太过靠前了
希望能把等级显示的后一点


──wxj541374210于2012-1-27 19:20补充以上内容’




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