Files

108 lines
4.8 KiB
C#

using UnityEngine;
namespace BumpCombat.Constants
{
[CreateAssetMenu(menuName = "BumpCombat/Constants/Passive Relics")]
public sealed class PassiveRelicConstants : ScriptableObject
{
[Header("Twin Horn Talisman")]
[Range(0f, 1f)] public float TwinHornDoubleDamageChance = 0.15f;
[Header("Resonance Core")]
[Range(0f, 1f)] public float ResonanceEchoChance = 0.08f;
[Min(0f)] public float ResonanceEchoCooldownSeconds = 3f;
[Range(0f, 1f)] public float ResonanceEchoDamageMultiplier = 0.5f;
[Header("Rupture Seed")]
[Range(0f, 1f)] public float RuptureSeedChance = 0.25f;
[Range(0f, 1f)] public float RuptureExplosionMaxHealthFraction = 0.1f;
[Min(0f)] public float RuptureExplosionPlayerBodyDiameters = 3f;
[Header("Wave Nail")]
[Range(0f, 1f)] public float WaveNailChance = 0.2f;
[Range(0f, 1f)] public float WaveNailDamageFraction = 0.6f;
[Min(0f)] public float WaveNailCooldownSeconds = 1.5f;
[Header("Capacitor Ring")]
[Range(0f, 1f)] public float CapacitorRingChance = 0.2f;
[Range(0f, 1f)] public float CapacitorRingDamageFraction = 0.35f;
[Min(0f)] public float CapacitorRingCooldownSeconds = 1.5f;
[Min(0)] public int CapacitorRingMaxTargets = 3;
[Header("Ember Wick")]
[Range(0f, 1f)] public float EmberWickChance = 0.25f;
[Header("Ember Carrier")]
[Range(0f, 1f)] public float EmberCarrierChance = 0.3f;
[Min(0f)] public float EmberCarrierCooldownSeconds = 0.5f;
[Min(0)] public int EmberCarrierMaxTargets = 3;
[Header("Rift Wedge")]
[Min(1)] public int RiftWedgeRequiredHits = 3;
[Min(0f)] public float RiftWedgeMaxHitGapSeconds = 4f;
[Header("Executioner Sigil")]
[Range(0f, 1f)] public float ExecutionerSigilChance = 0.25f;
[Range(0f, 1f)] public float ExecutionerSigilHealthThreshold = 0.1f;
[Header("Hunter Feather")]
[Range(0f, 1f)] public float HunterFeatherChance = 0.2f;
[Min(0f)] public float HunterFeatherDurationSeconds = 4f;
[Range(0f, 1f)] public float HunterFeatherMoveSpeedIncrease = 0.2f;
[Header("Blood Fang")]
[Range(0f, 1f)] public float BloodFangChance = 0.2f;
[Range(0f, 1f)] public float BloodFangHealMaxHealthFraction = 0.02f;
[Min(0f)] public float BloodFangCooldownSeconds = 1f;
[Header("Recovery Funnel")]
[Range(0f, 1f)] public float RecoveryFunnelChance = 0.25f;
[Range(0f, 1f)] public float RecoveryFunnelGaugeFraction = 0.05f;
[Min(0f)] public float RecoveryFunnelCooldownSeconds = 1f;
[Header("Trophy Mask")]
[Min(0f)] public float TrophyMaskDurationSeconds = 8f;
[Range(0f, 1f)] public float TrophyMaskBumpDamageIncrease = 0.2f;
[Range(0f, 1f)] public float TrophyMaskMoveSpeedIncrease = 0.1f;
[Header("Resonant Crystal")]
[Range(0f, 1f)] public float ResonantCrystalChance = 0.2f;
[Min(0f)] public float ResonantCrystalDelaySeconds = 0.5f;
[Range(0f, 1f)] public float ResonantCrystalDamageFraction = 0.5f;
[Min(0f)] public float ResonantCrystalCooldownSeconds = 6f;
[Header("Backflow Heart")]
[Range(0f, 1f)] public float BackflowHeartDamageThreshold = 0.25f;
[Range(0f, 1f)] public float BackflowHeartShieldFraction = 0.15f;
[Min(0f)] public float BackflowHeartShieldDurationSeconds = 4f;
[Min(0f)] public float BackflowHeartCooldownSeconds = 12f;
[Header("Counter Bell")]
[Range(0f, 1f)] public float CounterBellChance = 0.2f;
[Range(0f, 1f)] public float CounterBellSlowFraction = 0.3f;
[Min(0f)] public float CounterBellSlowDurationSeconds = 2f;
[Min(0f)] public float CounterBellCooldownSeconds = 4f;
[Header("Sprint Wheel")]
[Min(0f)] public float SprintWheelRequiredBodyDiameters = 8f;
[Range(0f, 1f)] public float SprintWheelShockwaveDamageFraction = 0.8f;
[Header("Battle Baton")]
[Range(0f, 1f)] public float BattleBatonTowerDamageIncrease = 0.15f;
[Min(0f)] public float BattleBatonDurationSeconds = 3f;
[Min(0f)] public float BattleBatonCooldownSeconds = 6f;
[Header("Bond Ledger")]
[Min(0f)] public float BondLedgerBumpWindowSeconds = 3f;
[Range(0f, 1f)] public float BondLedgerChance = 0.25f;
[Min(0f)] public float BondLedgerCooldownSeconds = 1f;
[Min(0)] public int BondLedgerCurrency = 1;
[Header("Pilgrim Pouch")]
[Range(0f, 1f)] public float PilgrimPouchChance = 0.05f;
[Range(0f, 1f)] public float PilgrimPouchHealMaxHealthFraction = 0.1f;
[Min(0f)] public float PilgrimPouchOrbLifetimeSeconds = 8f;
[Min(0f)] public float PilgrimPouchCooldownSeconds = 15f;
}
}