查看: 2114|回复: 3

[解决] VX区发提问帖时,使用Ruby代码框出错

[复制链接]
梦石
0
星屑
513
在线时间
1479 小时
注册时间
2011-9-17
回帖
1266

开拓者贵宾

发表于 2012-4-3 15:59:48 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 iisnow 于 2012-4-3 16:25 编辑

在VX区的一个帖子,打开以后是这个样子的:
report.jpg
注意内容是空的,然后点评按钮出现了错误;
点击点评后:出现
Discuz! System Error
Your request has encountered a problem.
Error messages:

    您当前的访问请求当中含有非法字符,已经被系统拒绝


Program messages:

    [Line: 0017]forum.php(discuz_core::instance)
    [Line: 0051]source/class/class_core.php(discuz_core->discuz_core)
    [Line: 0060]source/class/class_core.php(discuz_core->_init_output)
    [Line: 0296]source/class/class_core.php(discuz_core->_xss_check)
    [Line: 0328]source/class/class_core.php(system_error)
    [Line: 0018]source/function/function_core.php(discuz_error::system_error)
    [Line: 0024]source/class/class_error.php(discuz_error::debug_backtrace)


我原以为是LZ发了白贴,然后编辑后发现是有内容的:
之前写了个魔法盾的效果,是这样的
在Gme  Battler里加入了两段[pre lang="ruby" line="1"]def make_attack_damage_value(attacker)
    damage = attacker.atk * 4 - self.def * 2        # 基本计算
    damage = 0 if damage < 0
        if self.state?(51)   #寒冰禁锢状态时
    damage = 0
        end
      if self.state?(24)   #大地之盾时,伤害为1
      damage = 1
    end
     if self.state?(54)   #魔法盾状态时
      damage = ((attacker.atk * 4 - self.def * 2)*0.8).round
        end[/pre][pre lang="ruby" line="1"]#--------------------------------------------------------------------------
  # ● 反映伤害
  #     user : 特技以及物品的使用者
  #    调用前先设置 @hp_damage、@mp_damage、@absorbed。
  #--------------------------------------------------------------------------
  def execute_damage(user)
    if @hp_damage > 0           # 伤害为正数
      remove_states_shock       # 受到攻击解除的状态
    end
    self.hp -= @hp_damage
   
   
   
    self.mp -= @mp_damage
    if @absorbed                # 吸收的情况
      user.hp += @hp_damage
      user.mp += @mp_damage
    end
     if self.state?(54)  #魔法盾状态时
      self.mp -=(@hp_damage*0.25).round
    end
    if self.mp < (@hp_damage*0.25).round #魔法值不足时消除状态
      self.remove_state(54)
      end
  end[/pre]
这时的确在受到攻击时可以用魔法值抵消一定的伤害,不过在使用加血的药时,魔法值也会跟着回复,这个应该怎么解决呢?

然后我将RUBY框去掉,换成普通的[code][\code]就可以正常显示了;
不知道为什么:

帖子地址:http://rpg.blue/thread-226981-1-1.html

点评

为什么在版务区RUBY框就是好的啊  发表于 2012-4-3 16:02
我帖子中要有是不HX的空白,请Ctrl + A


  • 更新完成啦
  • 梦石
    0
    星屑
    894
    在线时间
    6267 小时
    注册时间
    2006-6-7
    回帖
    8173
发表于 2012-4-3 16:11:39 | 显示全部楼层
为什么我在哪里看代码框都是好的?

点评

ha?崩了?  发表于 2012-4-3 18:54
好了,我吧那个帖子编辑回去了,你再看看  发表于 2012-4-3 16:19
我刚刚试了试,居然可以啊,那原来那个帖子怎么回事啊  发表于 2012-4-3 16:17
因为我已经编辑好了啊  发表于 2012-4-3 16:12
回复

使用道具 举报

老黄鸡

梦石
4
星屑
45694
在线时间
7948 小时
注册时间
2009-7-6
回帖
13337

MZ评测员RM创作大赛01组委会开拓者贵宾

发表于 2012-4-3 16:45:12 | 显示全部楼层
@传说VS天涯一楼点评崩了
RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报


  • 更新完成啦
  • 梦石
    0
    星屑
    894
    在线时间
    6267 小时
    注册时间
    2006-6-7
    回帖
    8173
发表于 2012-4-3 16:59:33 | 显示全部楼层
这个真是奇葩,回头看看,版主就帮忙校正一下吧XD
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部