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

Project1

 找回密码
 注册会员
搜索
123
返回列表 发新帖
楼主: zlpwb1666
打印 上一主题 下一主题

[已经解决] 请教怎么在技能描述中添加伤害的变量呢?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
120
在线时间
486 小时
注册时间
2007-5-27
帖子
807
21
发表于 2014-4-27 20:32:16 | 只看该作者
zlpwb1666 发表于 2014-4-27 20:11
好吧 我错了
首先 谢谢你的回复。
我不想打那么多百分比,因为很多技能都是多属性加成,如果直接计算了 ...

……
那其实很简单啊。
你只需要把所有技能的数值自己算出来然后写上就好。
其他有提升属性的技能,你可以把对应数值写出来,然后做到让那个提升数值+技能里的计算数值=最终伤害数值,这样一来玩家要做的就是记住提升属性的数值和每个技能的伤害数值,相加就是最终的伤害数值。
这样一来你的角色绝对的明了、清晰、易懂。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
120
在线时间
486 小时
注册时间
2007-5-27
帖子
807
22
发表于 2014-4-27 20:48:41 | 只看该作者
zlpwb1666 发表于 2014-4-27 20:16
首先 谢谢你的回复。
第一题 答:玩过 70年**始玩的
第二题 答:没有玩过武器战 全部玩的远程

……
你所谓的明了清晰易懂只不过是让玩家焦头烂额而已……
LOL把伤害写的很高,可是实际上打出来的伤害通常连描述中的70%都不到,而且就算是LOL也有很多技能的伤害没有明确的写出来。比如蒙多的Q,只说了最低伤害是多少,实际伤害描述里只说了固定伤害和蒙多当前HP一定百分比的额外伤害,这个额外伤害是多少你永远找不到数值。还有蒙多的E也是,5级固定100伤害,每损失1%HP增加一定量的伤害,你是不是觉得蒙多很不清晰、明了、易懂?
实际上这货反倒是最简单好用的几个英雄之一。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
152
在线时间
91 小时
注册时间
2008-7-14
帖子
112
23
发表于 2014-4-27 20:50:16 | 只看该作者
感觉很有趣。。有一个理论方法,楼主可以试一试,,,由于可以找代码的参考txt删了。。所以楼主自己看看能不能试一试,
就是有 一段代码 x   ,可以读取角色具体数值的。然后, 结果就是  代码x*百分比 = 显示为具体数值,。但是那个技能就变成只能给一个角色用了。。。
吾为吾剑之骨 身为钢铁,血为烈焰 跨越万千战场而不败 未曾有一次败逃 未能有一次获解 自醉于剑之孤丘上 因此,此生亦无意义 此身,定可为剑
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
120
在线时间
486 小时
注册时间
2007-5-27
帖子
807
24
发表于 2014-4-27 20:52:41 | 只看该作者
zlpwb1666 发表于 2014-4-27 20:16
首先 谢谢你的回复。
第一题 答:玩过 70年**始玩的
第二题 答:没有玩过武器战 全部玩的远程

游戏不需要让玩家知道太多的东西,他们只需要一个大致的判断,知道每个技能的优点和弊端,并且了解哪个伤害比其他技能高就可以了。
你那样做的话,就算有个技能比别的技能伤害高30,但是谁会在意这区区30点伤害?与其寄希望于这30点伤害还不如想方设法多出一发伤害低30的技能来得实在。

评分

参与人数 2星屑 +5 梦石 +1 收起 理由
taroxd + 1 认可答案
zlpwb1666 + 5 认可答案,好吧,你赢了,我想结束这个话题.

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
92 小时
注册时间
2013-2-23
帖子
130
25
发表于 2014-4-27 22:11:19 | 只看该作者
本帖最后由 sh0016 于 2014-4-28 18:48 编辑

修正小数点错误。

控制符“\D[A][B]”:A=数值ID(HP=0,MP=1等等),B=比率(80,230等),只能输入数字。
例子:\D[4][200]=显示魔攻*200%
以上。
  1. #==============================================================================
  2. # ■ Window_Help
  3. #==============================================================================

  4. class Window_Help < Window_Base
  5.   #--------------------------------------------------------------------------
  6.   # ● 初始化对象
  7.   #--------------------------------------------------------------------------
  8.   def initialize(line_number = 2)
  9.     super(0, 0, Graphics.width, fitting_height(line_number))
  10.     [url=home.php?mod=space&uid=95897]@actor[/url] = nil
  11.   end
  12.   #--------------------------------------------------------------------------
  13.   # ● 设置角色
  14.   #--------------------------------------------------------------------------
  15.   def actor=(actor)
  16.     return if @actor == actor
  17.     @actor = actor
  18.     refresh
  19.   end
  20.   #--------------------------------------------------------------------------
  21.   # ● 设置物品
  22.   #     item : 技能、物品等
  23.   #--------------------------------------------------------------------------
  24.   def set_item(item)
  25.     set_text(item ? item.description : "")
  26.   end
  27.   #--------------------------------------------------------------------------
  28.   # ● 进行控制符的事前变换
  29.   #    在实际绘制前、将控制符替换为实际的内容。
  30.   #    为了减少歧异,文字「\」会被首先替换为转义符(\e)。
  31.   #--------------------------------------------------------------------------
  32.   def convert_escape_characters(text)
  33.     result = text.to_s.clone
  34.     result.gsub!(/\\/)            { "\e" }
  35.     result.gsub!(/\e\e/)          { "\\" }
  36.     result.gsub!(/\eV\[(\d+)\]/i) { $game_variables[$1.to_i] }
  37.     result.gsub!(/\eV\[(\d+)\]/i) { $game_variables[$1.to_i] }
  38.     result.gsub!(/\eN\[(\d+)\]/i) { actor_name($1.to_i) }
  39.     result.gsub!(/\eP\[(\d+)\]/i) { party_member_name($1.to_i) }
  40.     result.gsub!(/\eG/i)          { Vocab::currency_unit }
  41.     #--
  42.     result.gsub!(/\eD\[(\d+)\]\[(\d+)\]/i) { @actor.param($1.to_i) * $2.to_i / 100 }
  43.     result
  44.   end
  45. end

  46. #==============================================================================
  47. # ■ Scene_MenuBase
  48. #------------------------------------------------------------------------------
  49. #  所有菜单画面的基本处理
  50. #==============================================================================

  51. class Scene_MenuBase < Scene_Base
  52.   #--------------------------------------------------------------------------
  53.   # ● 生成帮助窗口
  54.   #--------------------------------------------------------------------------
  55.   alias create_help_window_plus create_help_window
  56.   def create_help_window
  57.     create_help_window_plus
  58.     @help_window.actor = @actor
  59.   end
  60. end

  61. #==============================================================================
  62. # ■ Scene_Battle
  63. #==============================================================================

  64. class Scene_Battle < Scene_Base
  65.   #--------------------------------------------------------------------------
  66.   # ● 指令“技能”
  67.   #--------------------------------------------------------------------------
  68.   alias command_skill_plus command_skill
  69.   def command_skill
  70.     @help_window.actor = BattleManager.actor
  71.     command_skill_plus
  72.   end
  73. end
复制代码

评分

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

查看全部评分

梦想是成为触手的新手DE☆SU(<ゝω·)绮罗星 ~☆
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
151
在线时间
208 小时
注册时间
2012-7-10
帖子
170
26
发表于 2014-4-28 11:29:15 | 只看该作者
LZ,你可以考虑把1个技能弄2个,一个是描述技能,触发一个公共事件,设置一开关,当战斗开始的时候打开,在地图上关闭开关,判断是否在战斗中,不在战斗中就显示文字,在战斗中的话就强制角色使用实际的技能
事件只会越用越熟,在用脚本前想想能否能用事件简便处理
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-25 07:18

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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