Files
Cielonos/Assets/Scripts/MainGame/Items/MainWeapons/Polychrome/Polychrome_AnimationCallbacks.cs
SoulliesOfficial a024305799 我说次元斩
2026-06-13 18:43:40 -04:00

73 lines
2.7 KiB
C#

using System;
using System.Collections.Generic;
using ChocDino.UIFX;
using Cielonos.MainGame.Buffs.Character;
using Cielonos.MainGame.Characters;
using Cielonos.MainGame.Effects.Feedback;
using Cielonos.MainGame.UI;
using SLSUtilities.Feedback;
using SLSUtilities.General;
using SLSUtilities.FunctionalAnimation;
using SLSUtilities.WwiseAssistance;
using UnityEngine;
namespace Cielonos.MainGame.Inventory.Collections
{
public partial class Polychrome
{
private void FAPF_GenerateNormalSlash(RuntimeFuncAnim rtFuncAnim)
{
CustomFunction.PC_StringString p = rtFuncAnim.GetParams<CustomFunction.PC_StringString>();
string hitFeedback = p.str1 switch
{
"ProbingAttack" => "SingleNormalHit",
_ => "MultiNormalHit"
};
GenerateNormalSlash(p.str0, attackData[p.str1], hitFeedback);
}
private void FAPF_GenerateAirNormalSlash(RuntimeFuncAnim rtFuncAnim)
{
CustomFunction.PC_StringString p = rtFuncAnim.GetParams<CustomFunction.PC_StringString>();
GenerateNormalSlash(p.str0, attackData[p.str1], "SingleNormalHit");
}
private void FAPF_GenerateHeavySlash(RuntimeFuncAnim rtFuncAnim)
{
CustomFunction.PC_StringString p = rtFuncAnim.GetParams<CustomFunction.PC_StringString>();
GenerateHeavySlash(p.str0, attackData[p.str1]);
}
private void FAPF_GenerateUltimateSlash(RuntimeFuncAnim rtFuncAnim)
{
CustomFunction.PC_StringString p = rtFuncAnim.GetParams<CustomFunction.PC_StringString>();
GenerateUltimateSlash(p.str0, attackData[p.str1]);
}
private void FAPF_GenerateDisruptionSlash(RuntimeFuncAnim rtFuncAnim)
{
CustomFunction.PC_StringString p = rtFuncAnim.GetParams<CustomFunction.PC_StringString>();
GenerateDisruptionSlash(p.str0, attackData[p.str1]);
}
private void FAPF_GenerateMovingSlash(RuntimeFuncAnim rtFuncAnim)
{
CustomFunction.PC_StringString p = rtFuncAnim.GetParams<CustomFunction.PC_StringString>();
GenerateDisruptionSlash(p.str0, attackData[p.str1]);
}
private void FAPF_GenerateCutStar(RuntimeFuncAnim rtFuncAnim)
{
vfxData.SpawnVFX("CutStar", player);
for (int i = 0; i < 3; i++)
{
float timeInterval = 0.5f + 0.07f * i;
player.selfTimeSm.AddLocalTimer(timeInterval, () =>
{
AudioManager.Post(AK.EVENTS.POLYCHROME_LIGHTATTACKSWING, player.gameObject);
});
}
}
}
}