Implement Echolocation
This commit is contained in:
parent
5962ea9fd6
commit
939b3e2664
6 changed files with 149 additions and 16 deletions
|
|
@ -8,7 +8,7 @@ public enum MCardId {
|
|||
VampireFangs,
|
||||
Whirlwind,
|
||||
BlanketOfDarkness,
|
||||
Sonar,
|
||||
Echolocation,
|
||||
GolemFist,
|
||||
GraniteDefense,
|
||||
SelfRepair,
|
||||
|
|
@ -18,28 +18,35 @@ public enum MCardId {
|
|||
|
||||
public class MonsterCardDatabase : CardDatabase<MonsterCard>
|
||||
{
|
||||
public override MonsterCard CreateCard(int id, BattleParticipant owner) {
|
||||
MCardId monsterCardId = (MCardId) id;
|
||||
switch (monsterCardId)
|
||||
private System.Type GetCardClass(MCardId id) {
|
||||
switch (id)
|
||||
{
|
||||
case MCardId.Eagerness:
|
||||
return new EagernessMCard(owner);
|
||||
return typeof(EagernessMCard);
|
||||
case MCardId.QuickSwiftDeath:
|
||||
return new QuickSwiftDeathMCard(owner);
|
||||
return typeof(QuickSwiftDeathMCard);
|
||||
case MCardId.VampireFangs:
|
||||
return new VampireFangsMCard(owner);
|
||||
return typeof(VampireFangsMCard);
|
||||
case MCardId.Whirlwind:
|
||||
return new WhirlwindMCard(owner);
|
||||
return typeof(WhirlwindMCard);
|
||||
case MCardId.Echolocation:
|
||||
return typeof(EcholocationMCard);
|
||||
case MCardId.GolemFist:
|
||||
return new GolemFistMCard(owner);
|
||||
return typeof(GolemFistMCard);
|
||||
case MCardId.GraniteDefense:
|
||||
return new GraniteDefenseMCard(owner);
|
||||
return typeof(GraniteDefenseMCard);
|
||||
case MCardId.GolemCharge:
|
||||
return new GolemChargeMCard(owner);
|
||||
return typeof(GolemChargeMCard);
|
||||
case MCardId.GolemBerserk:
|
||||
return new GolemBerserkMCard(owner);
|
||||
return typeof(GolemBerserkMCard);
|
||||
default:
|
||||
throw new System.ArgumentException("MCardId unknown", "id");
|
||||
}
|
||||
}
|
||||
|
||||
public override MonsterCard CreateCard(int id, BattleParticipant owner) {
|
||||
MCardId monsterCardId = (MCardId) id;
|
||||
System.Type cardClass = GetCardClass(monsterCardId);
|
||||
return (MonsterCard) System.Activator.CreateInstance(cardClass, owner);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue