yyl
2025-10-15 d84c2d711542e99ae6734a175aa1e76b58b3bbe8
125 战斗 子弹初始位置设置偏移
5个文件已修改
15 ■■■■ 已修改文件
Main/System/Battle/SkillEffect/BulletCurve/BezierBulletCurve.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/SkillEffect/BulletCurve/BounceBulletCurve.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/SkillEffect/BulletCurve/BulletCurve.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/SkillEffect/BulletCurve/PenetrateBulletCurve.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/SkillEffect/BulletCurve/StraightBulletCurve.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/SkillEffect/BulletCurve/BezierBulletCurve.cs
@@ -15,7 +15,7 @@
    public override void Reset()
    {
        base.Reset();
        start = WorldToLocalAnchoredPosition(bulletTrans.position);
        start = WorldToLocalAnchoredPosition(bulletTrans.position) + bulletOffset;
        end = WorldToLocalAnchoredPosition(target.position);
        duration = Vector2.Distance(start, end) / skillConfig.BulletFlySpeed;
        control = (start + end) / 2 + Vector2.up * 100f;
Main/System/Battle/SkillEffect/BulletCurve/BounceBulletCurve.cs
@@ -28,7 +28,7 @@
        bounceElapsed = 0f;
        if (hurtList.Count > 0)
        {
            start = WorldToLocalAnchoredPosition(bulletTrans.position);
            start = WorldToLocalAnchoredPosition(bulletTrans.position) + bulletOffset;
            end = WorldToLocalAnchoredPosition(target.position);
            duration = Vector2.Distance(start, end) / skillConfig.BulletFlySpeed;
        }
Main/System/Battle/SkillEffect/BulletCurve/BulletCurve.cs
@@ -12,6 +12,8 @@
    protected RectTransform target;
    protected Action<int, List<HB427_tagSCUseSkill.tagSCUseSkillHurt>> onHit;
    protected Vector2 bulletOffset = Vector2.zero;
    protected bool finished = false;
    protected float duration = 0f;
    protected float elapsed = 0f;
@@ -44,6 +46,11 @@
                out localPoint);
            bulletTrans.anchoredPosition = localPoint;
        }
        if (bulletEffect.effectConfig.effectPos != null && bulletEffect.effectConfig.effectPos.Length >= 2)
        {
            bulletOffset = new Vector2(bulletEffect.effectConfig.effectPos[0], bulletEffect.effectConfig.effectPos[1]);
        }
    }
    public virtual void Reset()
Main/System/Battle/SkillEffect/BulletCurve/PenetrateBulletCurve.cs
@@ -19,7 +19,7 @@
    {
        base.Reset();
        hitTriggered = false;
        start = WorldToLocalAnchoredPosition(bulletTrans.position);
        start = WorldToLocalAnchoredPosition(bulletTrans.position) + bulletOffset;
        end = WorldToLocalAnchoredPosition(target.position);
        duration = Vector2.Distance(start, end) / skillConfig.BulletFlySpeed;
        Vector2 dir = (end - start).normalized;
Main/System/Battle/SkillEffect/BulletCurve/StraightBulletCurve.cs
@@ -16,7 +16,7 @@
    public override void Reset()
    {
        base.Reset();
        start = WorldToLocalAnchoredPosition(bulletTrans.position);
        start = WorldToLocalAnchoredPosition(bulletTrans.position) + bulletOffset;
        end = WorldToLocalAnchoredPosition(target.position);
        duration = Vector2.Distance(start, end) / skillConfig.BulletFlySpeed;
        // BattleUtility.MarkStartAndEnd(bulletTrans, target);