add Bureaucrats and clog

This commit is contained in:
stryan 2021-11-16 15:50:53 -05:00
parent cdc5cb27fa
commit d5bc5ba8a4
1 changed files with 17 additions and 3 deletions

View File

@ -20,6 +20,11 @@ func OracleUpkeep(c *Card, g *Game) {
g.GameBoard.Remove(c) g.GameBoard.Remove(c)
g.Bury(c) g.Bury(c)
} }
case Clog:
if c.Counters >= 1 {
g.GameBoard.Remove(c)
g.Bury(c)
}
default: default:
c.Sick = false c.Sick = false
} }
@ -36,7 +41,7 @@ func OracleSpell(c CardType, g *Game) bool {
} }
func OracleToken(c CardType, g *Game) bool { func OracleToken(c CardType, g *Game) bool {
switch c { switch c {
case GoblinSpawn, Dud: case GoblinSpawn, Dud, Clog:
return true return true
default: default:
return false return false
@ -96,6 +101,12 @@ func OracleEnters(c *Card, g *Game) {
case Elephant: case Elephant:
g.QueuedEffect = &Effect{c.Id, uuid.Nil, 9, 0, false} g.QueuedEffect = &Effect{c.Id, uuid.Nil, 9, 0, false}
g.TargetReq = TargetOppEmpty g.TargetReq = TargetOppEmpty
case Bureaucrat:
g.QueuedEffect = &Effect{c.Id, uuid.Nil, 10, 0, false}
g.TargetReq = TargetAny
case Clog:
c.Phased = true
c.Counters = 0
case Mesmerist: case Mesmerist:
g.GetOpponentDeck(c.Owner).Shuffle() g.GetOpponentDeck(c.Owner).Shuffle()
case Diviner: case Diviner:
@ -161,7 +172,7 @@ func OracleLeaves(c *Card, g *Game) {
func OracleEndstep(c *Card, g *Game) { func OracleEndstep(c *Card, g *Game) {
switch c.Type { switch c.Type {
case ShieldWall, Tree, Hologram: case ShieldWall, Tree, Hologram, Clog:
c.Counters = c.Counters + 1 c.Counters = c.Counters + 1
} }
return return
@ -170,7 +181,7 @@ func OracleEndstep(c *Card, g *Game) {
func OraclePower(c CardType, g *Game) int { func OraclePower(c CardType, g *Game) int {
//this is horrible //this is horrible
switch c { switch c {
case Dud: case Dud, Clog:
return 0 return 0
case Speedster, HealthPotion, Tree, Goblin, GoblinSpawn, Chupacabra: case Speedster, HealthPotion, Tree, Goblin, GoblinSpawn, Chupacabra:
return 1 return 1
@ -262,6 +273,9 @@ func OracleEffect(c *Card, g *Game) {
case 9: //create dud case 9: //create dud
RemoveEffect(e.Owner, c) RemoveEffect(e.Owner, c)
c = NewCard(int(Dud), c.Owner, c.Position, uuid.Nil) c = NewCard(int(Dud), c.Owner, c.Position, uuid.Nil)
case 10: //create clog
RemoveEffect(e.Owner, c)
c = NewCard(int(Clog), c.Owner, c.Position, uuid.Nil)
default: default:
log.Println("wrong effect type") log.Println("wrong effect type")
} }