What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

E大,求教!combat文件要怎么修改

yuren991999

New Member
Joined
Sep 5, 2014
Messages
3
和尚,孙悟空套装,劲风煞放小金人来输出,目前使用db自带战斗文件,问题是有时无怪的时候角色也不停的刷劲风煞放小金人,直到精气不够为止
打开trinity的monk战斗文件看了下,比dh的复杂多了,dh的自己勉强可以改改,这个好多看不懂,特请教E大
找到关于sweeping winds(这个是指劲风煞的不?我看这个最像了。。。网上没找到技能的中英文对照翻译,囧。。。)的技能的一段,我把我知道的都写出来,请E大指导修正:


// Sweeping winds spam(看起来下面那段是用来判定释放条件的,那这段是用来判定什么的?)
if ((Player.PrimaryResource >= 75(这是指精气不少于75的吧) || (这个符号是或?)(hasInnaSet(这个词啥意思?) &&(这个符号是和?) Player.PrimaryResource >= 5)) &&
CanCast(SNOPower.Monk_SweepingWind, CanCastFlags.NoTimer)(这句看不懂。。。) && (GetHasBuff(SNOPower.Monk_SweepingWind)(要求先放buff技能?) || hasSWK(这词不懂。。)) &&
DateTime.UtcNow.Subtract(Trinity.SweepWindSpam).TotalMilliseconds >= 4000 && DateTime.UtcNow.Subtract(Trinity.SweepWindSpam).TotalMilliseconds <= 5400)(这个时间判定是指什么不太明白)
{
Trinity.SweepWindSpam = DateTime.UtcNow;(这个是判定条件吧,看不懂是什么意思)
return new TrinityPower(SNOPower.Monk_SweepingWind, 0f, Vector3.Zero, Trinity.CurrentWorldDynamicId, -1, 0, 0);(这句是判定可以释放技能?sweepingwind后面的参数看不懂是啥意思呀)
}

float minSweepingWindSpirit = hasInnaSet ? 5f : 75f;(释放需要的最小精气?inna是指殷娜套装,然后5精气?)

// Sweeping wind(这段看起来像战斗环境的判定)
if (!UseOOCBuff(OOC是指什么?) && CanCast(SNOPower.Monk_SweepingWind)(CanCast,SNOPower不懂是啥意思) && !GetHasBuff(SNOPower.Monk_SweepingWind)(这是要求已经放了Buff技能?) &&
((TargetUtil.AnyElitesInRange(25, 1)(25码内有一个精英敌人?) || TargetUtil.AnyMobsInRange(20, 1)(20码内有一个普通敌人?) || hasInnaSet (穿了殷娜?)||
(CurrentTarget.IsBossOrEliteRareUnique (当前敌人是boss或冠军怪物?)&& CurrentTarget.RadiusDistance <= 25f))(并且在25码以内?刚才不是有一个25码有精英怪的判定了?) &&
// Check our mantras(这词不懂是指啥。。。), if we have them, they are up first
(Monk_HasMantraAbilityAndBuff() &&
// Check if either we don't have blinding flash(致盲闪光?好像是个技能吧,刚玩monk,不太熟悉), or we do and it's been cast in the last 8000ms(8秒内已经释放过的意思?)
(Trinity.TimeSinceUse(SNOPower.Monk_BlindingFlash) <= 8000 || CheckAbilityAndBuff(SNOPower.Monk_BlindingFlash) ||
TargetUtil.AnyElitesInRange(25, 1) && Trinity.TimeSinceUse(SNOPower.Monk_BlindingFlash) <= 12500)) || hasSWK) &&(不懂这两句是要判定什么?25码内有一个精英怪,并且释放blindingFlash的12.5秒以内,这是什么要求?hasSWK,SweepingWind,K是指啥?)
Player.PrimaryResource >= minSweepingWindSpirit)(精气不少于释放劲风煞的最小值?可以判定是否穿了殷娜套装的?)
{
Trinity.SweepWindSpam = DateTime.UtcNow;(这句不懂)
return new TrinityPower(SNOPower.Monk_SweepingWind, 0f, Vector3.Zero, Trinity.CurrentWorldDynamicId, -1, 0, 0);(这句应该是满足了上面条件就可以释放技能了吧,参数看不懂)
}

// Sweeping Wind for Transcendance Health Regen(不懂这一段又是判定什么的。。。)
if (CanCast(SNOPower.Monk_SweepingWind, CanCastFlags.NoTimer) &&
Player.PrimaryResource >= minSweepingWindSpirit &&
Passives.Monk.Transcendence.IsActive && Settings.Combat.Monk.SpamSweepingWindOnLowHP &&
Player.CurrentHealthPct <= V.F("Monk.SweepingWind.SpamOnLowHealthPct") &&
Trinity.TimeSinceUse(SNOPower.Monk_SweepingWind) > 500)
{
Trinity.SweepWindSpam = DateTime.UtcNow;
return new TrinityPower(SNOPower.Monk_SweepingWind, 0f, Vector3.Zero, Trinity.CurrentWorldDynamicId, -1, 0, 0);
 
大体上就是你所理解的意思
CanCast(SNOPower.Monk_SweepingWind, CanCastFlags.NoTimer)
是指是否可以施放劲风煞
DateTime.UtcNow.Subtract(Trinity.SweepWindSpam).To talMilliseconds >= 4000
是指身上劲风煞BUFF存在的时间
Trinity.SweepWindSpam = DateTime.UtcNow
是将当前系统时间赋值到SweepWindSpam用来重新计算身上劲风煞BUFF存在的时间
GetHasBuff(SNOPower.Monk_SweepingWind)
是身上是否有劲风煞BUFF
至于hasInnaSet,hasSWK你得自己找上下文看里面是怎么定义这段内容
 
多谢e大!
我在琢磨琢磨,体会体会,揣测揣测,端详端详。。。



大体上就是你所理解的意思
cancast(snopower.monk_sweepingwind, cancastflags.notimer)
是指是否可以施放劲风煞
datetime.utcnow.subtract(trinity.sweepwindspam).to talmilliseconds >= 4000
是指身上劲风煞buff存在的时间
trinity.sweepwindspam = datetime.utcnow
是将当前系统时间赋值到sweepwindspam用来重新计算身上劲风煞buff存在的时间
gethasbuff(snopower.monk_sweepingwind)
是身上是否有劲风煞buff
至于hasinnaset,hasswk你得自己找上下文看里面是怎么定义这段内容
 
Back
Top