init
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
public class AddGoldEffect : EventEffectBase
|
||||
{
|
||||
public override EventEffectType EffectType => EventEffectType.AddGold;
|
||||
public override EventEffectParam Param => _param;
|
||||
private AddGoldParam _param;
|
||||
|
||||
public AddGoldEffect(AddGoldParam param, float? probability = null)
|
||||
{
|
||||
_param = param;
|
||||
Probability = probability;
|
||||
}
|
||||
}
|
||||
|
||||
public class AddGoldParam : EventEffectParam
|
||||
{
|
||||
public int Count;
|
||||
|
||||
public AddGoldParam(int count)
|
||||
{
|
||||
Count = count;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
public class AddRandomCompsEffect : EventEffectBase
|
||||
{
|
||||
public override EventEffectType EffectType => EventEffectType.AddRandomComps;
|
||||
public override EventEffectParam Param => _param;
|
||||
private AddRandomCompsParam _param;
|
||||
|
||||
public AddRandomCompsEffect(AddRandomCompsParam param, float? probability = null)
|
||||
{
|
||||
_param = param;
|
||||
Probability = probability;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public class AddRandomCompsParam : EventEffectParam
|
||||
{
|
||||
public int Count;
|
||||
public RarityType Rarity;
|
||||
public RarityType MinRarity;
|
||||
public RarityType MaxRarity;
|
||||
|
||||
public AddRandomCompsParam(int count, RarityType rarity)
|
||||
{
|
||||
Count = count;
|
||||
RarityType normalizedRarity = InventoryRarityRuleService.NormalizeComponentRarity(rarity);
|
||||
Rarity = normalizedRarity;
|
||||
MinRarity = normalizedRarity;
|
||||
MaxRarity = normalizedRarity;
|
||||
}
|
||||
|
||||
public AddRandomCompsParam(int count, RarityType minRarity, RarityType maxRarity)
|
||||
{
|
||||
Count = count;
|
||||
MinRarity = InventoryRarityRuleService.NormalizeComponentRarity(minRarity);
|
||||
MaxRarity = InventoryRarityRuleService.NormalizeComponentRarity(maxRarity);
|
||||
if (MinRarity > MaxRarity)
|
||||
{
|
||||
throw new System.ArgumentOutOfRangeException(
|
||||
nameof(minRarity),
|
||||
$"AddRandomComps rarity range is invalid: {MinRarity} > {MaxRarity}.");
|
||||
}
|
||||
|
||||
Rarity = MinRarity == MaxRarity ? MinRarity : RarityType.None;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
public class DamageRandomTowerEnduranceEffect : EventEffectBase
|
||||
{
|
||||
public override EventEffectType EffectType => EventEffectType.DamageRandomTowersEndurance;
|
||||
public override EventEffectParam Param => _param;
|
||||
private DamageRandomTowerEnduranceParam _param;
|
||||
|
||||
public DamageRandomTowerEnduranceEffect(DamageRandomTowerEnduranceParam param, float? probability = null)
|
||||
{
|
||||
_param = param;
|
||||
Probability = probability;
|
||||
}
|
||||
}
|
||||
|
||||
public class DamageRandomTowerEnduranceParam : EventEffectParam
|
||||
{
|
||||
/// <summary>
|
||||
/// 减少耐久的防御塔数量
|
||||
/// </summary>
|
||||
public int Count;
|
||||
|
||||
/// <summary>
|
||||
/// 防御塔耐久减少的量
|
||||
/// </summary>
|
||||
public int Amount;
|
||||
|
||||
public DamageRandomTowerEnduranceParam(int count, int amount)
|
||||
{
|
||||
Count = count;
|
||||
Amount = amount;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
public abstract class EventEffectBase
|
||||
{
|
||||
public abstract EventEffectType EffectType { get; }
|
||||
public abstract EventEffectParam Param { get; }
|
||||
public float? Probability;
|
||||
}
|
||||
|
||||
public class EventEffectParam
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
namespace GeometryTD.Definition
|
||||
{
|
||||
public class RemoveRandomCompsEffect : EventEffectBase
|
||||
{
|
||||
public override EventEffectType EffectType => EventEffectType.RemoveRandomComps;
|
||||
public override EventEffectParam Param => _param;
|
||||
private RemoveRandomCompsParam _param;
|
||||
|
||||
public RemoveRandomCompsEffect(RemoveRandomCompsParam param, float? probability = null)
|
||||
{
|
||||
_param = param;
|
||||
Probability = probability;
|
||||
}
|
||||
}
|
||||
|
||||
public class RemoveRandomCompsParam : EventEffectParam
|
||||
{
|
||||
public int Count;
|
||||
public RarityType Rarity;
|
||||
|
||||
public RemoveRandomCompsParam(int Count, RarityType Rarity)
|
||||
{
|
||||
this.Count = Count;
|
||||
this.Rarity = Rarity;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user