{ //幽灵召唤及管理脚本 "AbilityName" : "Lucy_Branch", "AbilityStacking": "Unique", "OnAbilityStart" : [ { "$type": "MoleMole.ApplyModifier", "ModifierName": "TeleportMainWoodModifier01", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "Predicates" : [ { "$type": "MoleMole.ByAnimatorStateNormalizedTime", "AnimatorStateName": "Attack_Branch_01_Start", "Target":"Self", "LayerIndex": 0, "NormalizedTimeLow" : 0.0, "NormalizedTimeHigh" : 1.0, }, ], }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "FadeInWoodModifier", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "AIModifier", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "ControllerModifier01", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "Predicates" : [ { "$type": "MoleMole.ByAnimatorStateNormalizedTime", "AnimatorStateName": "Attack_Branch_01_Start", "Target":"Self", "LayerIndex": 0, "NormalizedTimeLow" : 0.0, "NormalizedTimeHigh" : 1.0, }, ], }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "TeleportMainWoodModifier02", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "Predicates" : [ { "$type": "MoleMole.ByAnimatorStateNormalizedTime", "AnimatorStateName": "Attack_Branch_02_Start", "Target":"Self", "LayerIndex": 0, "NormalizedTimeLow" : 0.0, "NormalizedTimeHigh" : 1.0, }, ], }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "ControllerModifier02", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "Predicates" : [ { "$type": "MoleMole.ByAnimatorStateNormalizedTime", "AnimatorStateName": "Attack_Branch_02_Start", "Target":"Self", "LayerIndex": 0, "NormalizedTimeLow" : 0.0, "NormalizedTimeHigh" : 1.0, }, ], }, { "$type": "MoleMole.ApplyModifier", "ModifierName": "RandomJumpModifier", "Target": "Self", } ], "Modifiers": { "TeleportMainWoodModifier01": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type": "MoleMole.ApplyLogicMoveAction", "Target": "Self", "MovementConfig" : { "$type" : "MoleMole.ConfigMovementTarget", "Duration" : 0.1, "Gravity" : 0.0, "HitTangentialRatio" : 1, "HitNormalRatio" : 1, "TimesUpMoveOption" : "Stop", //此处可迭代成LucyWoodFollowPoint点,参考Lucy_Wood_Summon.而LucyFollowPoint可拆分成SpawnPoint和TeleportPoint以及BranchAttackPoint等等 "TargetPosRot" : { "CoordsOption" : "ReferTarget", "TargetOption" : { "$type" : "MoleMole.ConfigPosRotReferTarget", "OffsetReferTarget" : "Caster", "AttachPoint" : "WoodBranchPoint01", "IsUseAttachPointPos" : true, "IsUseAttachPointRotation" : true }, "Offset" : { "PositionOffset" : {"x":0.0, "y":0.0, "z":0.0 }, "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0}, "IsClampOffsetDistance" : false } }, //"DefaultOffset" : {"x":0.0, "y":0.0, "z":5.0}, "MoveType": { "$type" : "MoleMole.MovementTypeInstant", "NeedRayCastCheck" : false, //本次瞬移能够穿墙 }, "TargetUpdateMode" : "Always", "ReachTargetStop" : true }, "RotationConfig" : { "$type" : "MoleMole.ConfigRotationToTarget", "Duration" : -1, "TargetPosRot" : { "CoordsOption" : "ReferTarget", "TargetOption" : { "$type" : "MoleMole.ConfigPosRotReferTarget", "OffsetReferTarget" : "Caster", }, "Offset" : { //看向目标点前方无限远处,即和目标点朝向保持一致 "PositionOffset" : {"x":0.0, "y":0.0, "z":9999.0}, "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0}, "IsUseRotationY" : true, "IsUseRotationXZ" : true, "IsClampOffsetDistance" : false } }, "RotateType" : "Instant", "RotateSpeed" : 1, "TargetUpdateMode" : "OnStart", "ReachTargetStop" : true }, }, ] }, "AIModifier": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type" : "MoleMole.WriteAIParamAction", "Target" : "Self", "ParamName" : "Int_ActionMode", "IntParamValue" : 99, } ] }, "ControllerModifier01": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 3, "ParamName" : "Int_AttackIndex", "Target" : "Self", "IntVal" : 4, }, { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 1, "ParamName" : "Trigger_PressAttackA", "Target" : "Self", "BoolVal" : true, }, ] }, "TeleportMainWoodModifier02": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type": "MoleMole.ApplyLogicMoveAction", "Target": "Self", "MovementConfig" : { "$type" : "MoleMole.ConfigMovementTarget", "Duration" : 0.1, "Gravity" : 0.0, "HitTangentialRatio" : 1, "HitNormalRatio" : 1, "TimesUpMoveOption" : "Stop", //此处可迭代成LucyWoodFollowPoint点,参考Lucy_Wood_Summon.而LucyFollowPoint可拆分成SpawnPoint和TeleportPoint以及BranchAttackPoint等等 "TargetPosRot" : { "CoordsOption" : "ReferTarget", "TargetOption" : { "$type" : "MoleMole.ConfigPosRotReferTarget", "OffsetReferTarget" : "Caster", "AttachPoint" : "WoodBranchPoint02", "IsUseAttachPointPos" : true, "IsUseAttachPointRotation" : true }, "Offset" : { "PositionOffset" : {"x":0.0, "y":0.0, "z":0.0 }, "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0}, "IsClampOffsetDistance" : false } }, //"DefaultOffset" : {"x":0.0, "y":0.0, "z":5.0}, "MoveType": { "$type" : "MoleMole.MovementTypeInstant", "NeedRayCastCheck" : false, //本次瞬移能够穿墙 }, "TargetUpdateMode" : "Always", "ReachTargetStop" : true }, "RotationConfig" : { "$type" : "MoleMole.ConfigRotationToTarget", "Duration" : -1, "TargetPosRot" : { "CoordsOption" : "ReferTarget", "TargetOption" : { "$type" : "MoleMole.ConfigPosRotReferTarget", "OffsetReferTarget" : "Caster", }, "Offset" : { //看向目标点前方无限远处,即和目标点朝向保持一致 "PositionOffset" : {"x":0.0, "y":0.0, "z":9999.0}, "AngleOffset" : {"x":0.0, "y":0.0, "z":0.0}, "IsUseRotationY" : true, "IsUseRotationXZ" : true, "IsClampOffsetDistance" : false } }, "RotateType" : "Instant", "RotateSpeed" : 1, "TargetUpdateMode" : "OnStart", "ReachTargetStop" : true }, }, ] }, "FadeInWoodModifier": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type": "MoleMole.DitherFadeAction", "DitherFadeType": "FadeIn", "DitherFadeKey": "Default_Dither_Alpha_FadeIn", "Duration": 0.3, "Target" : "Self" }, ], }, "ControllerModifier02": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 3, "ParamName" : "Int_AttackIndex", "Target" : "Self", "IntVal" : 5, }, { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 1, "ParamName" : "Trigger_PressAttackA", "Target" : "Self", "BoolVal" : true, }, ] }, "RandomJumpModifier": { "ModifierStacking": "Refresh", "Duration": 0.03, "IgnoreTimeScale": false, "OnAdded": [ { "$type" : "MoleMole.RandomOperator", "Target" : "Self", "Odds" : 0.333, "OnSuccess" : [ { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 3, "ParamName" : "Int_JumpIndex", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "IntVal" : 0, }, ], "OnFailure": [ { "$type" : "MoleMole.RandomOperator", "Target" : "Self", "Odds" : 0.5, "OnSuccess" : [ { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 3, "ParamName" : "Int_JumpIndex", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "IntVal" : 1, }, ], "OnFailure": [ { "$type" : "MoleMole.SetAnimCtrlerParamAction", "ParamType" : 3, "ParamName" : "Int_JumpIndex", "Target": "Custom", "CustomKey": "LucyWood_AbilityTargetting_00", "IntVal" : 2, }, ] } ] } ] } } }