add sniper

This commit is contained in:
CortexCore
2023-10-31 18:07:15 +08:00
parent 18f664a545
commit f0f348c246
47 changed files with 4568 additions and 389 deletions

View File

@@ -50,6 +50,8 @@ namespace BITFALL.Guns
[System.Serializable]
public record SemiFireMode : FireMode
{
[SerializeField] private bool requireBoltAction;
public bool RequireBoltAction => requireBoltAction;
}
/// <summary>
/// 爆炸射击模式 BurstRound为爆炸开火时一次发射的子弹数量
@@ -63,26 +65,20 @@ namespace BITFALL.Guns
public int BurstRound=> brustRound;
public float BurstFireInterval => burstFireInterval;
}
/// <summary>
/// 资产化武器配置
/// </summary>
[System.Serializable]
public record ArrowFireMode : FireMode
{
}
public class AssetableGun : AssetableEquip
{
[Header(nameof(AssetableGun))]
[SerializeReference, SubclassSelector] protected IFireMode fireMode;
[SerializeReference, SubclassSelector] protected IFireMode fireMode = new AutoFireMode();
[SerializeField] private int initialDamage;
[SerializeField] private int initialBulletForce;
[SerializeField] private int initialBulletSpeed = 128;
[SerializeField] private int initialAimZoom = 1;
[SerializeField] private bool isScopeAim;
public IFireMode FireMode => fireMode;
public int InitialBulletForce => initialBulletForce;
public int InitialDamage => initialDamage;
public int InitialBulletSpeed => initialBulletSpeed;
public int InitialAimZoom => initialAimZoom;
public bool IsScopeAim => isScopeAim;
}
}