Project1

标题: 完全mud话的战斗系统,如何把伤害数字替换成文字。 [打印本页]

作者: Sence    时间: 2015-6-15 19:57
标题: 完全mud话的战斗系统,如何把伤害数字替换成文字。
本帖最后由 Sence 于 2015-6-15 20:00 编辑

间隔一年 终于有空 继续做我的mud。
目前的战斗画面 是无敌人蹦出 而是直接 在地图上左上 以文字滚动模式 描述 战斗,
for instance







然后伤害程度会在你对敌人照成 实际伤害时已渐隐的 血条告知

for instance



但实际上 mud 文字类战斗 配合 数字血量 还是 很违和的
那实际上 我希望的理想效果是
把图片中的 xx流失了223232点血液替换成

伤害 分段后的文字描述

如 1-1000 皮肤被划伤
    1000-2500 一击重击
     2500-4000 深可见骨的伤痕
    4000-5000 致命一击,切入骨髓...

   如此

因为 有血条的话其实 在mud里数字血量是个很鸡肋的东西
所以 更改成 上述效果 该如何 操作呢?







作者: 喵呜喵5    时间: 2015-6-15 20:10
本帖最后由 喵呜喵5 于 2015-6-15 20:15 编辑

%s表示受攻击者的姓名
  1. class Game_ActionResult
  2.   alias m5_20150615_hp_damage_text hp_damage_text
  3.   def hp_damage_text
  4.     if @hp_drain <= 0 && @hp_damage > 0
  5.       fmt =
  6.         if    @hp_damage < 1000 then "%s皮肤被划伤"
  7.         elsif @hp_damage < 2500 then "%s受到一击重击"
  8.         elsif @hp_damage < 4000 then "%s受到深可见骨的伤痕"
  9.         elsif @hp_damage < 5000 then "%s受到致命一击,切入骨髓..."
  10.         end
  11.       sprintf(fmt, @battler.name)
  12.     else
  13.       m5_20150615_hp_damage_text
  14.     end   
  15.   end
  16. end
复制代码
另外,像你这种满屏幕文字的游戏,个人建议你换一个字体
作者: Sence    时间: 2015-6-15 20:22
本帖最后由 Sence 于 2015-6-15 20:38 编辑
喵呜喵5 发表于 2015-6-15 20:10
%s表示受攻击者的姓名另外,像你这种满屏幕文字的游戏,个人建议你换一个字体 ...


文字 的风格 是因为有个 loli 心的姐姐 喜欢 这种 幼圆
我个人其实 更喜欢 fc里的那种 点阵字体
也更符合 mud 风格


代码 变了啊!额,这个问题解决了!另外 ,如果 想要 依据当前血量的百分比来描述 一句 现在的状态 该如何操作呢!就是 譬如
中招后 血量 为
上限的50百分,就有句 xx身体陡然一震, 气血翻涌不止,似乎伤的不轻,
中招后 血量 为
上限的25百分,就有句 xx面容上 青一阵,紫一阵,已经在勉强支撑。
中招后 血量 为
上限的5百分,就有句 xx的瞳孔猝然放大,看来  已无力回天了。

以上。









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