fix(taffy): bind signature monowheel mount active skill, support notify rpcs, and fix misleading debug panel vehicle label
This commit is contained in:
1 parent
2ad6246796
commit
dbcb8addf6
4 files changed
+29
-6
No files matched your search
@@ -18,6 +18,24 @@ internal sealed partial class GameRouter
|
||||
CombatWeaponDefinition weapon,
|
||||
CombatStyleDefinition style)
|
||||
{
|
||||
if (weapon.SpiritTemplateId == 15020992) // Taffy (塔菲)
|
||||
{
|
||||
// Taffy signature skills:
|
||||
// 51935209: 塔菲普攻1 (Hammer strikes)
|
||||
// 51935213: 塔菲重击 (Heavy slam)
|
||||
// 51935207: 通用闪避 (Dodge)
|
||||
// 51935230: 塔菲主动技_上车A (Taffy Monowheel Mount!)
|
||||
// 51935224: 塔菲大招 (超次元神速连打)
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeCommonSkill, WorldCodec.SkillBinding(unitId, 51935209));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeHeavyAttack, WorldCodec.SkillBinding(unitId, 51935213));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeDodgeSkill, WorldCodec.SkillBinding(unitId, 51935207));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeControlSkill, CombatCodec.ControlBinding(unitId, style));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeActiveSkill, WorldCodec.SkillBinding(unitId, 51935230));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeUniqueSkill, WorldCodec.SkillBinding(unitId, 51935224));
|
||||
ctx.Session.Log.Info($"[COMBAT] bound signature Taffy Monowheel skill profile for unit={unitId}");
|
||||
return;
|
||||
}
|
||||
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeCommonSkill, CombatCodec.CommonBinding(unitId, style));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeHeavyAttack, CombatCodec.HeavyAttackBinding(unitId, style));
|
||||
await ctx.NotifyAsync(MethodId.SyncChangeDodgeSkill, CombatCodec.DodgeBinding(unitId, style));
|
||||
|
||||
@@ -566,31 +566,35 @@ internal sealed partial class GameRouter
|
||||
|
||||
// Taffy Moto / Monowheel Handlers
|
||||
[Handler(MethodId.AskTaffyMotoEnterRush, HandlerPacketKind.Invoke)]
|
||||
[Handler(MethodId.AskTaffyMotoEnterRush, HandlerPacketKind.Notify)]
|
||||
private Task AskTaffyMotoEnterRush(Connection conn, UxRpcMessage msg)
|
||||
{
|
||||
conn.Log.Info("[TAFFY_MOTO] AskTaffyMotoEnterRush");
|
||||
return conn.ReturnEmptyOkAsync(msg);
|
||||
return msg.IsInvoke ? conn.ReturnEmptyOkAsync(msg) : Task.CompletedTask;
|
||||
}
|
||||
|
||||
[Handler(MethodId.AskTaffyMotoLeaveRush, HandlerPacketKind.Invoke)]
|
||||
[Handler(MethodId.AskTaffyMotoLeaveRush, HandlerPacketKind.Notify)]
|
||||
private Task AskTaffyMotoLeaveRush(Connection conn, UxRpcMessage msg)
|
||||
{
|
||||
conn.Log.Info("[TAFFY_MOTO] AskTaffyMotoLeaveRush");
|
||||
return conn.ReturnEmptyOkAsync(msg);
|
||||
return msg.IsInvoke ? conn.ReturnEmptyOkAsync(msg) : Task.CompletedTask;
|
||||
}
|
||||
|
||||
[Handler(MethodId.OnTafeiMotorColliding, HandlerPacketKind.Invoke)]
|
||||
[Handler(MethodId.OnTafeiMotorColliding, HandlerPacketKind.Notify)]
|
||||
private Task OnTafeiMotorColliding(Connection conn, UxRpcMessage msg)
|
||||
{
|
||||
conn.Log.Info("[TAFFY_MOTO] OnTafeiMotorColliding");
|
||||
return conn.ReturnEmptyOkAsync(msg);
|
||||
return msg.IsInvoke ? conn.ReturnEmptyOkAsync(msg) : Task.CompletedTask;
|
||||
}
|
||||
|
||||
[Handler(MethodId.AskGetOffMotor, HandlerPacketKind.Invoke)]
|
||||
[Handler(MethodId.AskGetOffMotor, HandlerPacketKind.Notify)]
|
||||
private Task AskGetOffMotor(Connection conn, UxRpcMessage msg)
|
||||
{
|
||||
conn.Log.Info("[TAFFY_MOTO] AskGetOffMotor");
|
||||
return conn.ReturnEmptyOkAsync(msg);
|
||||
return msg.IsInvoke ? conn.ReturnEmptyOkAsync(msg) : Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user