IcePhoenix白楼
2021/10/15
简要说明：添加鞭炮斩的鞭炮伤害（对天守阁义父无效），但仍可使用突刺法解决，作为平衡，删除了鞭炮斩刀身的火伤；下调义父的巨型忍者落杀起跳的冲击力；大幅降低义父的躯干恢复速度，使得弹刀收益更加明显，作为平衡，上调了义父的总躯干；把义父变鸟的就绪时间从20-30s延长到35-45s；添加了二阶段10%躯干或生命值以下后的表演，并平衡了这期间火鸟的影响。

具体改动：
参数：
{子弹50600260的伤害组改为50600160，dmgHitRecordLifeTime改为0.3，hitRadius改为1.8，把50601255-50601259的派生子弹id改为50601260，50601250-50601254的派生子弹id对应改成50601255-50601259，50601260的bulletEmitter_bulletId改为50601261，伤害50600199炎伤改为0}
{伤害50600320冲击力改为1；50600800的招架和弹开击退改为2.88；50600340的招架和弹开击退也改为2.88}
{npc50601010的躯干恢复速度由60降低至30，躯干由750改为900}
{复制5020为3506011，写条件为950，持续时间15，令200602结束触发3506011，令3506011结束触发3506012。复制300610为3506012，减少hp由-100改为99，条件写950，时间写0，调用视觉特效3506020。新建视觉特效3506020，ffxid为220506，部署点为510}
事件：
修改事件包1000-0000和1000-5060中的如下事件：
Event(11005930, Restart, function() {
    EndIfEventFlag(EventEndType.End, OFF, TargetEventFlagType.EventFlag, 8304);
    EndIfEventFlag(EventEndType.End, ON, TargetEventFlagType.EventFlag, 9339);
    IfCharacterHasSpEffect(OR01, 1000900, 3506020, true, ComparisonType.Equal, 1);
    IfCharacterHasSpEffect(OR01, 1000900, 3506021, true, ComparisonType.Equal, 1);
    IfConditionGroup(AND01, PASS, OR01);
    IfCharacterHasSpEffect(AND01, 1000901, 200004, true, ComparisonType.Equal, 1);
    IfEventFlag(AND01, OFF, TargetEventFlagType.EventFlag, 11005934);
    IfCharacterHasSpEffect(AND01, 1000900, 3506080, false, ComparisonType.Equal, 1);
    IfCharacterHasSpEffect(AND01, 1000900, 3506011, false, ComparisonType.Equal, 1);
    IfConditionGroup(MAIN, PASS, AND01);
    SetSpEffect(1000900, 3506030);
    ShootBullet(1000900, 1000900, 220, 250600990, 0, 0, 0);
    SetLockOnPoint(1000900, 220, Disabled);
    SetCharacterAnimationState(1000900, Disabled);
    RequestCharacterAIReplan(1000900);
    WaitFixedTimeSeconds(0.33);
    RequestCharacterAICommand(1000901, 10, 0);
    WaitFixedTimeSeconds(0.16);
    SetEventFlag(11005934, ON);
    WaitRandomTimeSeconds(35, 45);
    EndUnconditionally(EventEndType.Restart);
});

Event(11005936, Restart, function() {
    EndIfEventFlag(EventEndType.End, OFF, TargetEventFlagType.EventFlag, 8304);
    EndIfEventFlag(EventEndType.End, ON, TargetEventFlagType.EventFlag, 9339);
    IfCharacterHasSpEffect(OR01, 1000900, 5033, true, ComparisonType.Equal, 1);
    IfEventFlag(OR01, ON, TargetEventFlagType.EventFlag, 9339);
    IfConditionGroup(AND01, PASS, OR01);
    IfEventFlag(AND01, ON, TargetEventFlagType.EventFlag, 11005902);
    IfCharacterHasSpEffect(AND01, 1000900, 300610, false, ComparisonType.Equal, 1);
    IfConditionGroup(MAIN, PASS, AND01);
    IfCharacterHasSpEffect(OR02, 1000900, 5033, true, ComparisonType.Equal, 1);
    IfEventFlag(OR02, ON, TargetEventFlagType.EventFlag, 9339);
    IfConditionGroup(MAIN, PASS, OR02);
    EndIfEventFlag(EventEndType.End, ON, TargetEventFlagType.EventFlag, 9339);
    ClearSpEffect(1000901, 3507020);
    WaitFixedTimeSeconds(0.3);
    ShootBullet(1000901, 1000901, 10, 250700100, 0, 0, 0);
    WaitFixedTimeSeconds(0.1);
    WarpCharacterAndCopyFloor(1000901, TargetEntityType.Character, 1000900, -1, 1000900);
    RequestCharacterAICommand(1000901, 20, 1);
    ForceAnimationPlayback(1000901, 3032, false, true, false, 0, 1);
    IfCharacterHasEventMessage(MAIN, 1000901, 10, true, ComparisonType.Equal, 1);
    RequestCharacterAICommand(1000901, -1, 1);
    SetSpEffect(1000901, 3507020);
    EndUnconditionally(EventEndType.Restart);
});

心中义父：
作者：IcePhoenix白楼
参数：动作340和352的三个击退距离改成2，1.8，1.8，义父50601010血量从2552下调到2000，恢复速度从60变成30，躯干上限从750改为900。
把341判定位置1半径写0.2，hit1dmypoly1写5，hit1dmypoly2写10，对353如法炮制


事件：
Event(11005930, Restart, function() {
    EndIfEventFlag(EventEndType.End, OFF, TargetEventFlagType.EventFlag, 8304);
    EndIfEventFlag(EventEndType.End, ON, TargetEventFlagType.EventFlag, 9339);
    IfCharacterHasSpEffect(OR01, 1000990, 3506020, true, ComparisonType.Equal, 1);
    IfCharacterHasSpEffect(OR01, 1000990, 3506021, true, ComparisonType.Equal, 1);
    IfConditionGroup(AND01, PASS, OR01);
    IfCharacterHasSpEffect(AND01, 1000991, 200004, true, ComparisonType.Equal, 1);
    IfEventFlag(AND01, OFF, TargetEventFlagType.EventFlag, 11005934);
    IfCharacterHasSpEffect(AND01, 1000990, 3506080, false, ComparisonType.Equal, 1);
    IfCharacterHasSpEffect(AND01, 1000990, 3506013, false, ComparisonType.Equal, 1);
    IfConditionGroup(MAIN, PASS, AND01);
    SetSpEffect(1000990, 3506030);
    ShootBullet(1000990, 1000990, 220, 250600990, 0, 0, 0);
    SetLockOnPoint(1000990, 220, Disabled);
    SetCharacterAnimationState(1000990, Disabled);
    RequestCharacterAIReplan(1000990);
    WaitFixedTimeSeconds(0.33);
    RequestCharacterAICommand(1000991, 10, 0);
    WaitFixedTimeSeconds(0.16);
    SetEventFlag(11005934, ON);
    WaitRandomTimeSeconds(35, 45);
    EndUnconditionally(EventEndType.Restart);
});

Event(11005936, Restart, function() {
    EndIfEventFlag(EventEndType.End, OFF, TargetEventFlagType.EventFlag, 8304);
    EndIfEventFlag(EventEndType.End, ON, TargetEventFlagType.EventFlag, 9339);
    IfCharacterHasSpEffect(OR01, 1000990, 5033, true, ComparisonType.Equal, 1);
    IfEventFlag(OR01, ON, TargetEventFlagType.EventFlag, 9339);
    IfConditionGroup(AND01, PASS, OR01);
    IfEventFlag(AND01, ON, TargetEventFlagType.EventFlag, 11005902);
    IfCharacterHasSpEffect(AND01, 1000990, 300610, false, ComparisonType.Equal, 1);
    IfConditionGroup(MAIN, PASS, AND01);
    IfCharacterHasSpEffect(OR02, 1000990, 5033, true, ComparisonType.Equal, 1);
    IfEventFlag(OR02, ON, TargetEventFlagType.EventFlag, 9339);
    IfConditionGroup(MAIN, PASS, OR02);
    EndIfEventFlag(EventEndType.End, ON, TargetEventFlagType.EventFlag, 9339);
    ClearSpEffect(1000991, 3507020);
    WaitFixedTimeSeconds(0.3);
    ShootBullet(1000991, 1000991, 10, 250700100, 0, 0, 0);
    WaitFixedTimeSeconds(0.1);
    WarpCharacterAndCopyFloor(1000991, TargetEntityType.Character, 1000990, -1, 1000990);
    RequestCharacterAICommand(1000991, 20, 1);
    ForceAnimationPlayback(1000991, 3032, false, true, false, 0, 1);
    IfCharacterHasEventMessage(MAIN, 1000991, 10, true, ComparisonType.Equal, 1);
    RequestCharacterAICommand(1000991, -1, 1);
    SetSpEffect(1000991, 3507020);
    EndUnconditionally(EventEndType.Restart);
});