主页
论坛
新帖
最新消息
新帖
最新动态
制作互助群
登录
注册
Toggle sidebar
Toggle sidebar
菜单
安装应用
安装
回复主题
【进站必读】宝可饭堂社区全局规定v1.10
关于坚决维护同人创作社群秩序与共识的公告
论坛
独立开发
进阶教程
激进红原创特性的简单实现
禁用JavaScript。为了获得更好的体验,请在运行之前启用浏览器中的JavaScript。
您正在使用一款已经过时的浏览器!部分功能不能正常使用。
请尝试升级或使用
其他浏览器
。
信息
<blockquote data-quote="komeiji514" data-source="post: 1946" data-attributes="member: 65"><p>Frozen Mist(冰雾):不会受到招式追加效果和场地上陷阱(隐形岩、毒菱、撒菱、黏黏网)的影响。</p><p>第一个效果联想到鳞粉,直接在鳞粉的特性相关代码处加入就行了。</p><p>第二个效果联想到厚底靴这个道具,同样直接添加就可以了。</p><p>第一个效果:</p><p>[CODE=ruby]def pbAdditionalEffectChance(user, target, effectChance = 0)</p><p> return 0 if @battle.pbCheckGlobalAbility(:FROZENMIST)</p><p> return 0 if target.hasActiveAbility?([:SHIELDDUST,:FROZENMIST]) && !@battle.moldBreaker</p><p> ret = (effectChance > 0) ? effectChance : @addlEffect</p><p> return ret if ret > 100</p><p> if (Settings::MECHANICS_GENERATION >= 6 || @function_code != "EffectDependsOnEnvironment") &&</p><p> (user.hasActiveAbility?(:SERENEGRACE) || user.pbOwnSide.effects[PBEffects::Rainbow] > 0)</p><p> ret *= 2</p><p> end</p><p> ret = 100 if $DEBUG && Input.press?(Input::CTRL)</p><p> return ret</p><p> end</p><p>def pbFlinchChance(user, target)</p><p> return 0 if flinchingMove?</p><p> return 0 if target.hasActiveAbility?([:SHIELDDUST,:FROZENMIST]) && !@battle.moldBreaker</p><p> ret = 0</p><p> if user.hasActiveAbility?(:STENCH, true) ||</p><p> user.hasActiveItem?([:KINGSROCK, :RAZORFANG], true)</p><p> ret = 10</p><p> end</p><p> ret *= 2 if user.hasActiveAbility?(:SERENEGRACE) ||</p><p> user.pbOwnSide.effects[PBEffects::Rainbow] > 0</p><p> return ret</p><p> end</p><p>end[/CODE]</p><p>第二个效果:</p><p>[CODE=ruby]def pbEntryHazards(battler)</p><p> battler_side = battler.pbOwnSide</p><p> # Stealth Rock</p><p> if battler_side.effects[PBEffects::StealthRock] && battler.takesIndirectDamage? &&</p><p> GameData::Type.exists?(:ROCK) && !battler.hasActiveItem?(:HEAVYDUTYBOOTS) &&</p><p> !battler.hasActiveAbility?(:FROZENMIST)</p><p> bTypes = battler.pbTypes(true)</p><p> eff = Effectiveness.calculate(:ROCK, *bTypes)</p><p> if !Effectiveness.ineffective?(eff)</p><p> battler.pbReduceHP(battler.totalhp * eff / 8, false)</p><p> pbDisplay(_INTL("Pointed stones dug into {1}!", battler.pbThis))</p><p> battler.pbItemHPHealCheck</p><p> end</p><p> end</p><p> # Spikes</p><p> if battler_side.effects[PBEffects::Spikes] > 0 && battler.takesIndirectDamage? &&</p><p> !battler.airborne? && !battler.hasActiveItem?(:HEAVYDUTYBOOTS) &&</p><p> !battler.hasActiveAbility?(:FROZENMIST)</p><p> spikesDiv = [8, 6, 4][battler_side.effects[PBEffects::Spikes] - 1]</p><p> battler.pbReduceHP(battler.totalhp / spikesDiv, false)</p><p> pbDisplay(_INTL("{1} is hurt by the spikes!", battler.pbThis))</p><p> battler.pbItemHPHealCheck</p><p> end</p><p> # Toxic Spikes</p><p> if battler_side.effects[PBEffects::ToxicSpikes] > 0 && !battler.fainted? && !battler.airborne? && !battler.hasActiveAbility?(:FROZENMIST)</p><p> if battler.pbHasType?(:POISON)</p><p> battler_side.effects[PBEffects::ToxicSpikes] = 0</p><p> pbDisplay(_INTL("{1} absorbed the poison spikes!", battler.pbThis))</p><p> elsif battler.pbCanPoison?(nil, false) && !battler.hasActiveItem?(:HEAVYDUTYBOOTS)</p><p> if battler_side.effects[PBEffects::ToxicSpikes] == 2</p><p> battler.pbPoison(nil, _INTL("{1} was badly poisoned by the poison spikes!", battler.pbThis), true)</p><p> else</p><p> battler.pbPoison(nil, _INTL("{1} was poisoned by the poison spikes!", battler.pbThis))</p><p> end</p><p> end</p><p> end</p><p> # Sticky Web</p><p> if battler_side.effects[PBEffects::StickyWeb] && !battler.fainted? && !battler.airborne? &&</p><p> !battler.hasActiveItem?(:HEAVYDUTYBOOTS) && !battler.hasActiveAbility?(:FROZENMIST)</p><p> pbDisplay(_INTL("{1} was caught in a sticky web!", battler.pbThis))</p><p> if battler.pbCanLowerStatStage?(:SPEED)</p><p> battler.pbLowerStatStage(:SPEED, 1, nil)</p><p> battler.pbItemStatRestoreCheck</p><p> end</p><p> end</p><p> end[/CODE]</p></blockquote><p></p>
[QUOTE="komeiji514, post: 1946, member: 65"] Frozen Mist(冰雾):不会受到招式追加效果和场地上陷阱(隐形岩、毒菱、撒菱、黏黏网)的影响。 第一个效果联想到鳞粉,直接在鳞粉的特性相关代码处加入就行了。 第二个效果联想到厚底靴这个道具,同样直接添加就可以了。 第一个效果: [CODE=ruby]def pbAdditionalEffectChance(user, target, effectChance = 0) return 0 if @battle.pbCheckGlobalAbility(:FROZENMIST) return 0 if target.hasActiveAbility?([:SHIELDDUST,:FROZENMIST]) && !@battle.moldBreaker ret = (effectChance > 0) ? effectChance : @addlEffect return ret if ret > 100 if (Settings::MECHANICS_GENERATION >= 6 || @function_code != "EffectDependsOnEnvironment") && (user.hasActiveAbility?(:SERENEGRACE) || user.pbOwnSide.effects[PBEffects::Rainbow] > 0) ret *= 2 end ret = 100 if $DEBUG && Input.press?(Input::CTRL) return ret end def pbFlinchChance(user, target) return 0 if flinchingMove? return 0 if target.hasActiveAbility?([:SHIELDDUST,:FROZENMIST]) && !@battle.moldBreaker ret = 0 if user.hasActiveAbility?(:STENCH, true) || user.hasActiveItem?([:KINGSROCK, :RAZORFANG], true) ret = 10 end ret *= 2 if user.hasActiveAbility?(:SERENEGRACE) || user.pbOwnSide.effects[PBEffects::Rainbow] > 0 return ret end end[/CODE] 第二个效果: [CODE=ruby]def pbEntryHazards(battler) battler_side = battler.pbOwnSide # Stealth Rock if battler_side.effects[PBEffects::StealthRock] && battler.takesIndirectDamage? && GameData::Type.exists?(:ROCK) && !battler.hasActiveItem?(:HEAVYDUTYBOOTS) && !battler.hasActiveAbility?(:FROZENMIST) bTypes = battler.pbTypes(true) eff = Effectiveness.calculate(:ROCK, *bTypes) if !Effectiveness.ineffective?(eff) battler.pbReduceHP(battler.totalhp * eff / 8, false) pbDisplay(_INTL("Pointed stones dug into {1}!", battler.pbThis)) battler.pbItemHPHealCheck end end # Spikes if battler_side.effects[PBEffects::Spikes] > 0 && battler.takesIndirectDamage? && !battler.airborne? && !battler.hasActiveItem?(:HEAVYDUTYBOOTS) && !battler.hasActiveAbility?(:FROZENMIST) spikesDiv = [8, 6, 4][battler_side.effects[PBEffects::Spikes] - 1] battler.pbReduceHP(battler.totalhp / spikesDiv, false) pbDisplay(_INTL("{1} is hurt by the spikes!", battler.pbThis)) battler.pbItemHPHealCheck end # Toxic Spikes if battler_side.effects[PBEffects::ToxicSpikes] > 0 && !battler.fainted? && !battler.airborne? && !battler.hasActiveAbility?(:FROZENMIST) if battler.pbHasType?(:POISON) battler_side.effects[PBEffects::ToxicSpikes] = 0 pbDisplay(_INTL("{1} absorbed the poison spikes!", battler.pbThis)) elsif battler.pbCanPoison?(nil, false) && !battler.hasActiveItem?(:HEAVYDUTYBOOTS) if battler_side.effects[PBEffects::ToxicSpikes] == 2 battler.pbPoison(nil, _INTL("{1} was badly poisoned by the poison spikes!", battler.pbThis), true) else battler.pbPoison(nil, _INTL("{1} was poisoned by the poison spikes!", battler.pbThis)) end end end # Sticky Web if battler_side.effects[PBEffects::StickyWeb] && !battler.fainted? && !battler.airborne? && !battler.hasActiveItem?(:HEAVYDUTYBOOTS) && !battler.hasActiveAbility?(:FROZENMIST) pbDisplay(_INTL("{1} was caught in a sticky web!", battler.pbThis)) if battler.pbCanLowerStatStage?(:SPEED) battler.pbLowerStatStage(:SPEED, 1, nil) battler.pbItemStatRestoreCheck end end end[/CODE] [/QUOTE]
验证
1002-905=?
回复帖子
最新帖子
全
我想切换视角讲述故事
最新更新:全民制作人
星期三,21:43
开发问题
Z
将GBA打包成APK
最新更新:zheyeyeye
星期三,21:27
GBA教程
Z
【进站必读】宝可饭堂社区全局规定v1.10
最新更新:z1652646304
星期三,20:25
公告规定
雨
pokeemerald怎么改箱子数
最新更新:雨落天晴
星期二,10:16
开发问题
[讨论]什么契机导致你想做游戏的
最新更新:A原翼
星期一,00:12
其他相关讨论
论坛统计
主题
559
消息
2,422
成员
3,879
最新成员
stonezz
联系我们
QQ
2201858342
邮箱
pokefans@qq.com
论坛
独立开发
进阶教程
激进红原创特性的简单实现
顶部