added the project files

This commit is contained in:
2024-06-28 09:25:34 -04:00
parent 0b8b0ee658
commit 84a1c84250
43 changed files with 1494 additions and 0 deletions

BIN
projects/cc3k/cc3k.pdf Normal file

Binary file not shown.

125
projects/cc3k/cc3kfloor.txt Normal file
View File

@ -0,0 +1,125 @@
|-----------------------------------------------------------------------------|
| |
| |--------------------------| |-----------------------| |
| |.......@..5.......M.......| |..............9D.......| |
| |.........3................+########+.......E...............|-------| |
| |........L.................| # |..................O........9D..|--| |
| |....O............1........| # |..................................|--| |
| |----------+---------------| # |----+----------------|...............| |
| # ############# |........W......| |
| # # |-----+------| |1..............| |
| # # |............| |...............| |
| ################### |....W....3..| ######+...............| |
| # # |............| # |...............| |
| # # |-----+------| # |--------+------| |
| |---------+-----------| # # # # |
| |.....\..2........1...| # # # |----+------| |
| |.....................| ######################## |...........| |
| |.........1.......2...| # # |0..........| |
| |...L.................| # |------+--------------------|...........| |
| |.....................| # |.................4.....................| |
| |.....................+##########+..........H.................H..........| |
| |..7.......6..........| |................7...................7..| |
| |---------------------| |---------------------------------------| |
| |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| |
| |--------------------------| |-----------------------| |
| |.......@..5.......M.......| |..............9D.......| |
| |.........3................+########+.......E...............|-------| |
| |........L.................| # |..................O........9D..|--| |
| |....O............1........| # |..................................|--| |
| |----------+---------------| # |----+----------------|...............| |
| # ############# |........W......| |
| # # |-----+------| |1..............| |
| # # |............| |...............| |
| ################### |....W....3..| ######+...............| |
| # # |............| # |...............| |
| # # |-----+------| # |--------+------| |
| |---------+-----------| # # # # |
| |.....\..2........1...| # # # |----+------| |
| |.....................| ######################## |...........| |
| |.........1.......2...| # # |0..........| |
| |...L.................| # |------+--------------------|...........| |
| |.....................| # |.................4.....................| |
| |.....................+##########+..........H.................H..........| |
| |..7.......6..........| |................7...................7..| |
| |---------------------| |---------------------------------------| |
| |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| |
| |--------------------------| |-----------------------| |
| |.......@..5.......M.......| |..............9D.......| |
| |.........3................+########+.......E...............|-------| |
| |........L.................| # |..................O........9D..|--| |
| |....O............1........| # |..................................|--| |
| |----------+---------------| # |----+----------------|...............| |
| # ############# |........W......| |
| # # |-----+------| |1..............| |
| # # |............| |...............| |
| ################### |....W....3..| ######+...............| |
| # # |............| # |...............| |
| # # |-----+------| # |--------+------| |
| |---------+-----------| # # # # |
| |.....\..2........1...| # # # |----+------| |
| |.....................| ######################## |...........| |
| |.........1.......2...| # # |0..........| |
| |...L.................| # |------+--------------------|...........| |
| |.....................| # |.................4.....................| |
| |.....................+##########+..........H.................H..........| |
| |..7.......6..........| |................7...................7..| |
| |---------------------| |---------------------------------------| |
| |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| |
| |--------------------------| |-----------------------| |
| |.......@..5.......M.......| |..............9D.......| |
| |.........3................+########+.......E...............|-------| |
| |........L.................| # |..................O........9D..|--| |
| |....O............1........| # |..................................|--| |
| |----------+---------------| # |----+----------------|...............| |
| # ############# |........W......| |
| # # |-----+------| |1..............| |
| # # |............| |...............| |
| ################### |....W....3..| ######+...............| |
| # # |............| # |...............| |
| # # |-----+------| # |--------+------| |
| |---------+-----------| # # # # |
| |.....\..2........1...| # # # |----+------| |
| |.....................| ######################## |...........| |
| |.........1.......2...| # # |0..........| |
| |...L.................| # |------+--------------------|...........| |
| |.....................| # |.................4.....................| |
| |.....................+##########+..........H.................H..........| |
| |..7.......6..........| |................7...................7..| |
| |---------------------| |---------------------------------------| |
| |
|-----------------------------------------------------------------------------|
|-----------------------------------------------------------------------------|
| |
| |--------------------------| |-----------------------| |
| |.......@..5.......M.......| |..............9D.......| |
| |.........3................+########+.......E...............|-------| |
| |........L.................| # |..................O........9D..|--| |
| |....O............1........| # |..................................|--| |
| |----------+---------------| # |----+----------------|...............| |
| # ############# |........W......| |
| # # |-----+------| |1..............| |
| # # |............| |...............| |
| ################### |....W....3..| ######+...............| |
| # # |............| # |...............| |
| # # |-----+------| # |--------+------| |
| |---------+-----------| # # # # |
| |.....\..2........1...| # # # |----+------| |
| |.....................| ######################## |...........| |
| |.........1.......2...| # # |0..........| |
| |...L.................| # |------+--------------------|...........| |
| |.....................| # |.................4.....................| |
| |.....................+##########+..........H.................H..........| |
| |..7.......6..........| |................7...................7..| |
| |---------------------| |---------------------------------------| |
| |
|-----------------------------------------------------------------------------|

View File

@ -0,0 +1,25 @@
|-----------------------------------------------------------------------------|
| |
| |--------------------------| |-----------------------| |
| |..........................| |.......................| |
| |..........................+########+.......................|-------| |
| |..........................| # |...............................|--| |
| |..........................| # |..................................|--| |
| |----------+---------------| # |----+----------------|...............| |
| # ############# |...............| |
| # # |-----+------| |...............| |
| # # |............| |...............| |
| ################### |............| ######+...............| |
| # # |............| # |...............| |
| # # |-----+------| # |--------+------| |
| |---------+-----------| # # # # |
| |.....................| # # # |----+------| |
| |.....................| ######################## |...........| |
| |.....................| # # |...........| |
| |.....................| # |------+--------------------|...........| |
| |.....................| # |.......................................| |
| |.....................+##########+.......................................| |
| |.....................| |.......................................| |
| |---------------------| |---------------------------------------| |
| |
|-----------------------------------------------------------------------------|

BIN
projects/chess/chess.pdf Normal file

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,26 @@
#include <iostream>
#include <iomanip>
using namespace std;
#include <unistd.h> // getpid
#include "PRNG.h"
PRNG prng1, prng2, prng3; // global, normally one generator for entire program
extern PRNG prng1; // declaration to use prng1 in another translation unit
int main() {
uint32_t seed = getpid(); // start with a pseudo random-number
prng1.seed( seed ); // synchronize all generators with same seed
prng2.seed( seed );
prng3.seed( seed );
// check 3 forms of generation are identical for 3 generators
for ( int i = 0; i < 10; i += 1 ) { // generate 10 random numbers between 0-1
cout << prng1() % 2 << prng2( 1 ) << prng3( 0, 1 ) << endl;
}
cout << endl;
for ( int i = 0; i < 10; i += 1 ) { // generate 10 random numbers between 5-21
cout << setw( 2 ) << prng1() % 17 + 5 << " "; // 0-16 + 5 = 5-21
cout << setw( 2 ) << prng2( 16 ) + 5 << " ";
cout << setw( 2 ) << prng3( 5, 21 ) << endl;
}
}

View File

@ -0,0 +1,51 @@
// Pseudo Random Number Generator : generate repeatable sequence of values that
// appear random by scrambling the bits of a 32-bit integer value.
//
// Interface :
// PRNG(s) - set starting seed
// seed() - read seed
// seed(s) - reset seed
// prng() - generate random value in range [0,UINT_MAX]
// prng(u) - generate random value in range [0,u]
// prng(l,u) - generate random value in range [l,u]
//
// Examples : generate random number between 5-21
// prng() % 17 + 5 values 0-16 + 5 = 5-21
// prng( 16 ) + 5
// prng( 5, 21 )
#ifndef __PRNG_H__
#define __PRNG_H__
#include <cstdint> // uint32_t
#include <cassert> // assert
class PRNG {
uint32_t seed_; // same results on 32/64-bit architectures
public:
PRNG( uint32_t s = 362436069 ) { // default seed
seed_ = s; // set seed
assert( ((void)"invalid seed", seed_ != 0) );
}
uint32_t seed() { // read seed
return seed_;
}
void seed( uint32_t s ) { // reset seed
seed_ = s; // set seed
assert( ((void)"invalid seed", seed_ != 0) );
}
uint32_t operator()() { // [0,UINT_MAX]
seed_ = 36969 * (seed_ & 65535) + (seed_ >> 16); // scramble bits
return seed_;
}
uint32_t operator()( uint32_t u ) { // [0,u]
assert( ((void)"invalid random range", u < (uint32_t)-1) );
return operator()() % (u + 1); // call operator()()
}
uint32_t operator()( uint32_t l, uint32_t u ) { // [l,u]
assert( ((void)"invalid random range", l <= u) );
return operator()( u - l ) + l; // call operator()( uint32_t )
}
};
#endif

View File

@ -0,0 +1,53 @@
/*
* Example of using the <algorithm> std::shuffle and seeding a random number generator with either
* the command-line argument provided seed integer, or the current system time if there is no
* argument provided. Based off of the example at:
*
* http://www.cplusplus.com/reference/algorithm/shuffle/
*
* Last updated: 2020-10-06
* Copyright 2020 UW. All rights reserved.
*
*/
//
#include <iostream>
#include <string>
#include <stdexcept>
#include <vector>
#include <algorithm>
#include <random>
#include <chrono>
void print( std::vector<int> const & v ) {
for ( int i : v ) std::cout << i << ' ';
std::cout << std::endl;
}
int main( int argc, char * argv[] ) {
std::vector<int> v = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
// use a time-based seed for the default seed value
unsigned seed = std::chrono::system_clock::now().time_since_epoch().count();
if ( argc > 1 ) {
try {
seed = std::stoi( std::string{ argv[1] } );
} catch( std::invalid_argument & e ) {
std::cerr << e.what() << std::endl;
return 1;
} catch( std::out_of_range & e ) {
std::cerr << e.what() << std::endl;
return -1;
} // catch
} // if
std::default_random_engine rng{seed};
for ( int i = 0; i < 1000; i++ ) {
//std::shuffle( v.begin(), v.end(), std::default_random_engine(seed) );
std::shuffle( v.begin(), v.end(), rng );
print(v);
} // for
return 0;
} // main

View File

@ -0,0 +1,26 @@
#include <iostream>
#include <string>
#include <stdlib.h> // srand/rand
#include <sys/types.h> // getpid
#include <unistd.h>
using namespace std;
void createRandomRow(int*& row, int size) {
row = new int[size];
for (int i = 0; i < size; ++i) row[i] = rand()%100;
} // createRandomRow
int main(int argc, char* argv[]) {
int seed = getpid();
if ( argc == 2 ) seed = stoi(string{argv[1]});
srand(seed); // only seed the random number generator once!
int *row = nullptr;
int size = rand() % 5 + 5;
createRandomRow(row, size);
cout << "row: ";
for (int i = 0; i < size; ++i) cout << row[i] << ' ';
cout << endl;
delete [] row;
} // main

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Apprentice Summoner | 1 |
|-------------------------------|
| Minion |
|-------------------------------|
| 1 | Summon a 1/1 air |
|------ elemental |
| |
|------ ------|
| 1 | | 1 |
|-------------------------------|

View File

@ -0,0 +1,465 @@
#include "ascii_graphics.h"
#include <sstream>
static void prepare_for_replace(card_template_t &);
static void replace_text_left(card_template_t &,char,std::string);
static void replace_text_right(card_template_t &,char,std::string);
static card_template_t display_minion_general(card_template_t,std::string,int,int,int,
std::string,int);
static card_template_t display_enchantment_general(card_template_t,std::string,int,std::string,
std::string,std::string);
card_template_t display_minion_no_ability(std::string name,int cost,int attack,int defence) {
return display_minion_general(CARD_TEMPLATE_MINION_NO_ABILITY,name,cost,attack,defence,"",0);
}
card_template_t display_minion_triggered_ability(std::string name,int cost,int attack,
int defence,std::string trigger_desc) {
return display_minion_general(CARD_TEMPLATE_MINION_NO_ABILITY,name,cost,attack,
defence,trigger_desc,0);
}
card_template_t display_minion_activated_ability(std::string name,int cost,int attack, int defence,
int ability_cost,std::string ability_desc) {
return display_minion_general(CARD_TEMPLATE_MINION_WITH_ABILITY,name,cost,attack,defence,
ability_desc,ability_cost);
}
card_template_t display_ritual(std::string name,int cost,int ritual_cost,std::string ritual_desc,
int ritual_charges) {
std::ostringstream oss;
card_template_t out(CARD_TEMPLATE_RITUAL);
prepare_for_replace(out);
replace_text_left(out,'N',name);
oss << cost;
replace_text_right(out,'C',oss.str());
replace_text_right(out,'T',"Ritual");
oss.str("");
oss << ritual_cost;
replace_text_left(out,'K',oss.str());
replace_text_left(out,'E',ritual_desc);
oss.str("");
oss << ritual_charges;
replace_text_right(out,'D',oss.str());
return out;
}
card_template_t display_spell(std::string name,int cost,std::string desc) {
std::ostringstream oss;
card_template_t out(CARD_TEMPLATE_SPELL);
prepare_for_replace(out);
replace_text_left(out,'N',name);
oss << cost;
replace_text_right(out,'C',oss.str());
replace_text_right(out,'T',"Spell");
replace_text_left(out,'E',desc);
return out;
}
card_template_t display_enchantment(std::string name,int cost,std::string desc) {
return display_enchantment_general(CARD_TEMPLATE_ENCHANTMENT,name,cost,desc,"","");
}
card_template_t display_enchantment_attack_defence(std::string name,int cost,std::string desc,
std::string attack,std::string defence) {
return display_enchantment_general(CARD_TEMPLATE_ENCHANTMENT_WITH_ATTACK_DEFENCE,
name,cost,desc,attack,defence);
}
card_template_t display_player_card(int player_num,std::string name,int life,int mana) {
std::ostringstream oss;
card_template_t out = player_num == 1 ? PLAYER_1_TEMPLATE : PLAYER_2_TEMPLATE;
prepare_for_replace(out);
std::string centred_name = name;
if (centred_name.size() < 13) {
int extend = 13 - static_cast<int>(centred_name.size());
oss.str("");
for (int i=0;i<extend/2-1;i++) oss << ' ';
oss << centred_name;
centred_name = oss.str();
}
replace_text_left(out,'N',centred_name);
oss.str("");
oss << life;
replace_text_right(out,'H',oss.str());
oss.str("");
oss << mana;
replace_text_left(out,'M',oss.str());
return out;
}
static card_template_t display_enchantment_general(card_template_t out,std::string name,int cost,
std::string desc,std::string attack,
std::string defence) {
std::ostringstream oss;
prepare_for_replace(out);
replace_text_left(out,'N',name);
oss << cost;
replace_text_right(out,'C',oss.str());
replace_text_right(out,'T',"Enchantment");
replace_text_left(out,'E',desc);
replace_text_left(out,'A',attack);
replace_text_right(out,'D',defence);
return out;
}
static card_template_t display_minion_general(card_template_t out,std::string name,int cost,int attack,int defence,std::string desc,int ability_cost) {
std::ostringstream oss;
prepare_for_replace(out);
replace_text_left(out,'N',name);
oss << cost;
replace_text_right(out,'C',oss.str());
replace_text_right(out,'T',"Minion");
oss.str("");
oss << attack;
replace_text_left(out,'A',oss.str());
oss.str("");
oss << defence;
replace_text_right(out,'D',oss.str());
replace_text_left(out,'E',desc);
oss.str("");
oss << ability_cost;
replace_text_left(out,'K',oss.str());
return out;
}
const card_template_t CARD_TEMPLATE_MINION_NO_ABILITY =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓",
"┃ ~NNNNNNNNNNNNNNNNNNNNN~ │ ~C~ ┃",
"┠─────────────────────────┴─────┨",
"┃ ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ ┃",
"┠───────────────────────────────┨",
"┃ ~EEEEEEEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEEEEEEEE~ ┃",
"┠─────┐ ┌─────┨",
"┃ ~AA~│ │~DD~ ┃",
"┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛"};
#else
{"|-------------------------------|",
"| ~NNNNNNNNNNNNNNNNNNNNN~ | ~C~ |",
"|-------------------------------|",
"| ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ |",
"|-------------------------------|",
"| ~EEEEEEEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEEEEEEEE~ |",
"|------ ------|",
"| ~AA~| |~DD~ |",
"|-------------------------------|"};
#endif
const card_template_t CARD_TEMPLATE_MINION_WITH_ABILITY =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓",
"┃ ~NNNNNNNNNNNNNNNNNNNNN~ │ ~C~ ┃",
"┠─────────────────────────┴─────┨",
"┃ ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ ┃",
"┠─────┬─────────────────────────┨",
"┃ ~K~ │ ~EEEEEEEEEEEEEEEEEEEEEE ┃",
"┠─────┘ EEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEE~ ┃",
"┠─────┐ ┌─────┨",
"┃ ~AA~│ │~DD~ ┃",
"┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛"};
#else
{"|-------------------------------|",
"| ~NNNNNNNNNNNNNNNNNNNNN~ | ~C~ |",
"|-------------------------------|",
"| ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ |",
"|-------------------------------|",
"| ~K~ | ~EEEEEEEEEEEEEEEEEEEEEE |",
"|------ EEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEE~ |",
"|------ ------|",
"| ~AA~| |~DD~ |",
"|-------------------------------|"};
#endif
const card_template_t CARD_TEMPLATE_BORDER =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛"};
#else
{"|-------------------------------|",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"|-------------------------------|"};
#endif
const card_template_t CARD_TEMPLATE_EMPTY =
{" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "};
const card_template_t CARD_TEMPLATE_RITUAL =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓",
"┃ ~NNNNNNNNNNNNNNNNNNNNN~ │ ~C~ ┃",
"┠─────────────────────────┴─────┨",
"┃ ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ ┃",
"┠─────┬─────────────────────────┨",
"┃ ~K~ │ ~EEEEEEEEEEEEEEEEEEEEEE ┃",
"┠─────┘ EEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEE~ ┃",
"┃ ┌─────┨",
"┃ │~DD~ ┃",
"┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛"};
#else
{"|-------------------------------|",
"| ~NNNNNNNNNNNNNNNNNNNNN~ | ~C~ |",
"|-------------------------------|",
"| ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ |",
"|-------------------------------|",
"| ~K~ | ~EEEEEEEEEEEEEEEEEEEEEE |",
"|------ EEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEE~ |",
"| ------|",
"| |~DD~ |",
"|-------------------------------|"};
#endif
const card_template_t CARD_TEMPLATE_SPELL =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓",
"┃ ~NNNNNNNNNNNNNNNNNNNNN~ │ ~C~ ┃",
"┠─────────────────────────┴─────┨",
"┃ ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ ┃",
"┠───────────────────────────────┨",
"┃ ~EEEEEEEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEEEEEEEEE ┃",
"┃ EEEEEEEEEEEEEEEEEEEEEEEEEEEE~ ┃",
"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛"};
#else
{"|-------------------------------|",
"| ~NNNNNNNNNNNNNNNNNNNNN~ | ~C~ |",
"|-------------------------------|",
"| ~TTTTTTTTTTTTTTTTTTTTTTTTTTT~ |",
"|-------------------------------|",
"| ~EEEEEEEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEEEEEEEEE |",
"| EEEEEEEEEEEEEEEEEEEEEEEEEEEE~ |",
"|-------------------------------|"};
#endif
const card_template_t CARD_TEMPLATE_ENCHANTMENT_WITH_ATTACK_DEFENCE = CARD_TEMPLATE_MINION_NO_ABILITY;
const card_template_t CARD_TEMPLATE_ENCHANTMENT = CARD_TEMPLATE_SPELL;
const card_template_t PLAYER_1_TEMPLATE =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓",
"┃ ┃",
"┃ ┃",
"┃ ~NNNNNNNNNNN~ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┠─────┐ ┌─────┨",
"┃~HH~ │ │ ~MM~┃",
"┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛"};
#else
{"|-------------------------------|",
"| |",
"| |",
"| ~NNNNNNNNNNN~ |",
"| |",
"| |",
"| |",
"| |",
"|------ ------|",
"|~HH~ | | ~MM~|",
"|-------------------------------|"};
#endif
const card_template_t PLAYER_2_TEMPLATE =
#if SIMPLE_GRAPHICS == 0
{"┏━━━━━┯━━━━━━━━━━━━━━━━━━━┯━━━━━┓",
"┃~HH~ │ │ ~MM~┃",
"┠─────┘ └─────┨",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ┃",
"┃ ~NNNNNNNNNNN~ ┃",
"┃ ┃",
"┃ ┃",
"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛"};
#else
{"|-------------------------------|",
"|~HH~ | | ~MM~|",
"|------ ------|",
"| |",
"| |",
"| |",
"| |",
"| ~NNNNNNNNNNN~ |",
"| |",
"| |",
"|-------------------------------|"};
#endif
const std::vector<std::string> CENTRE_GRAPHIC =
#if SIMPLE_GRAPHICS == 0
{"╠═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣",
"║ ║",
"║ ███████╗ ██████╗ ██████╗ ██████╗███████╗██████╗ ██╗ ██╗ ║",
"║ ██╔════╝██╔═══██╗██╔══██╗██╔════╝██╔════╝██╔══██╗╚██╗ ██╔╝ ║",
"║ ███████╗██║ ██║██████╔╝██║ █████╗ ██████╔╝ ╚████╔╝ ║",
"║ ╚════██║██║ ██║██╔══██╗██║ ██╔══╝ ██╔══██╗ ╚██╔╝ ║",
"║ ███████║╚██████╔╝██║ ██║╚██████╗███████╗██║ ██║ ██║ ║",
"║ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝╚═╝ ╚═╝ ╚═╝ ║",
"║ ║",
"╠═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣"};
#else
{"|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|",
"| _____ |",
"| / ____| |",
"| | (___ ___ _ __ ___ ___ _ __ _ _ |",
"| \\___ \\ / _ \\| '__/ __/ _ \\ '__| | | | |",
"| ____) | (_) | | | (_| __/ | | |_| | |",
"| |_____/ \\___/|_| \\___\\___|_| \\__, | |",
"| __/ | |",
"| |___/ |",
"|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|"};
#endif
const std::string EXTERNAL_BORDER_CHAR_UP_DOWN =
#if SIMPLE_GRAPHICS == 0
"";
#else
"|";
#endif
const std::string EXTERNAL_BORDER_CHAR_LEFT_RIGHT =
#if SIMPLE_GRAPHICS == 0
"";
#else
"-";
#endif
const std::string EXTERNAL_BORDER_CHAR_TOP_LEFT =
#if SIMPLE_GRAPHICS == 0
"";
#else
"-";
#endif
const std::string EXTERNAL_BORDER_CHAR_TOP_RIGHT =
#if SIMPLE_GRAPHICS == 0
"";
#else
"-";
#endif
const std::string EXTERNAL_BORDER_CHAR_BOTTOM_LEFT =
#if SIMPLE_GRAPHICS == 0
"";
#else
"-";
#endif
const std::string EXTERNAL_BORDER_CHAR_BOTTOM_RIGHT =
#if SIMPLE_GRAPHICS == 0
"";
#else
"-";
#endif
//Delimiter used to separate replaceable blocks
//(Displayed by ~ in the actual strings)
//Should never appear in replaced text
static const char DELIMITER = '\v';
static void replace_text_left(card_template_t &text,char flag,std::string new_text) {
std::string::iterator sit = new_text.begin();
bool start_replace = false;
bool end_replace = false;
for (card_template_t::iterator vit = text.begin(); vit != text.end(); ++vit) {
for (std::string::iterator lit = vit->begin(); lit != vit->end(); ++lit) {
if (*lit == DELIMITER && *(lit+1) == flag) {
start_replace = true;
} else if (*lit == DELIMITER) {
end_replace = true;
}
if (start_replace && (*lit == flag || *lit == DELIMITER)) {
if (sit != new_text.end()) {
*lit = *sit;
++sit;
} else {
*lit = ' ';
}
}
if (end_replace) {
end_replace = false;
start_replace = false;
}
}
}
}
static void replace_text_right(card_template_t &text,char flag,std::string new_text) {
std::string::reverse_iterator sit = new_text.rbegin();
bool start_replace = false;
bool end_replace = false;
for (card_template_t::reverse_iterator vit = text.rbegin(); vit != text.rend(); ++vit) {
for (std::string::reverse_iterator lit = vit->rbegin(); lit != vit->rend(); ++lit) {
if (*lit == DELIMITER && *(lit+1) == flag) {
start_replace = true;
} else if (*lit == DELIMITER) {
end_replace = true;
}
if (start_replace && (*lit == flag || *lit == DELIMITER)) {
if (sit != new_text.rend()) {
*lit = *sit;
++sit;
} else {
*lit = ' ';
}
}
if (end_replace) {
end_replace = false;
start_replace = false;
}
}
}
}
static void prepare_for_replace(card_template_t &text) {
for (card_template_t::iterator it=text.begin();it != text.end();++it) {
for (std::string::iterator sit = it->begin();sit != it->end();++sit) {
if (*sit == '~') *sit = DELIMITER;
}
}
}

View File

@ -0,0 +1,43 @@
#include <vector>
#include <string>
//SIMPLE_GRAPHICS = 0 displays a fancy style.
//SIMPLE_GRAPHICS = 1 displays the style shown in the project specification's examples
//You are encouraged to use SIMPLE_GRAPHICS = 0, but some terminals may not like it.
#define SIMPLE_GRAPHICS 0
typedef std::vector<std::string> card_template_t;
card_template_t display_minion_no_ability(std::string name,int cost,int attack,int defence);
card_template_t display_minion_triggered_ability(std::string name,int cost,int attack,int defence,
std::string trigger_desc);
card_template_t display_minion_activated_ability(std::string name,int cost,int attack,int defence,
int ability_cost, std::string ability_desc);
card_template_t display_ritual(std::string name,int cost,int ritual_cost,std::string ritual_desc,
int ritual_charges);
card_template_t display_spell(std::string name,int cost,std::string desc);
card_template_t display_enchantment_attack_defence(std::string name,int cost,std::string desc,
std::string attack,std::string defence);
card_template_t display_enchantment(std::string name,int cost,std::string desc);
card_template_t display_player_card(int player_num,std::string name,int life,int mana);
extern const card_template_t CARD_TEMPLATE_MINION_NO_ABILITY;
extern const card_template_t CARD_TEMPLATE_MINION_WITH_ABILITY;
extern const card_template_t CARD_TEMPLATE_BORDER;
extern const card_template_t CARD_TEMPLATE_EMPTY;
extern const card_template_t CARD_TEMPLATE_RITUAL;
extern const card_template_t CARD_TEMPLATE_SPELL;
extern const card_template_t CARD_TEMPLATE_ENCHANTMENT_WITH_ATTACK_DEFENCE;
extern const card_template_t CARD_TEMPLATE_ENCHANTMENT;
extern const card_template_t PLAYER_1_TEMPLATE;
extern const card_template_t PLAYER_2_TEMPLATE;
extern const std::vector<std::string> CENTRE_GRAPHIC;
extern const std::string EXTERNAL_BORDER_CHAR_UP_DOWN;
extern const std::string EXTERNAL_BORDER_CHAR_LEFT_RIGHT;
extern const std::string EXTERNAL_BORDER_CHAR_TOP_LEFT;
extern const std::string EXTERNAL_BORDER_CHAR_TOP_RIGHT;
extern const std::string EXTERNAL_BORDER_CHAR_BOTTOM_LEFT;
extern const std::string EXTERNAL_BORDER_CHAR_BOTTOM_RIGHT;

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Banish | 2 |
|-------------------------------|
| Spell |
|-------------------------------|
| Destroy target minion or |
| ritual |
| |
| |
| |
|-------------------------------|

View File

@ -0,0 +1,56 @@
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
||-------------------------------| |-------------------------------| |-------------------------------||
|| | | | | Bone Golem | 2 ||
|| | | | |-------------------------------||
|| | | Sean | | Minion ||
|| | | | |-------------------------------||
|| | | | | Gain +1/+1 whenever a minion ||
|| | | | | leaves play. ||
|| | | | | ||
|| | |------ ------| |------ ------||
|| | | 20 | | 0 | | 2 | | 1 ||
||-------------------------------| |-------------------------------| |-------------------------------||
||-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------||
|| Novice Pyromancer | 1 || Potion Seller | 2 || Earth Elemental | 3 || || ||
||-------------------------------||-------------------------------||-------------------------------|| || ||
|| Minion || Minion || Minion || || ||
||-------------------------------||-------------------------------||-------------------------------|| || ||
|| 3 | Deal 1 damage to target || At the end of your turn, all || || || ||
||------ minion || your minions gain +0/+1. || || || ||
|| || || || || ||
||------ ------||------ ------||------ ------|| || ||
|| 4 | | 8 || 1 | | 4 || 4 | | 5 || || ||
||-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| _____ |
| / ____| |
| | (___ ___ _ __ ___ ___ _ __ _ _ |
| \___ \ / _ \| '__/ __/ _ \ '__| | | | |
| ____) | (_) | | | (_| __/ | | |_| | |
| |_____/ \___/|_| \___\___|_| \__, | |
| __/ | |
| |___/ |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
||-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------||
|| Air Elemental | 0 || Fire Elemental | 2 || Apprentice Summoner | 1 || || ||
||-------------------------------||-------------------------------||-------------------------------|| || ||
|| Minion || Minion || Minion || || ||
||-------------------------------||-------------------------------||-------------------------------|| || ||
|| || Whenever an opponent's minion || 1 | Summon a 1/1 air || || ||
|| || enters play, deal 1 damage to ||------ elemental || || ||
|| || it. || || || ||
||------ ------||------ ------||------ ------|| || ||
|| 1 | | 1 || 3 | | 2 || 2 | | 2 || || ||
||-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------||
||-------------------------------| |-------------------------------| |-------------------------------||
|| Aura of Power | 1 | | 20 | | 0 | | ||
||-------------------------------| |------ ------| | ||
|| Ritual | | | | ||
||-------------------------------| | | | ||
|| 1 | Whenever a minion enters| | | | ||
||------ play under your control,| | | | ||
|| it gains +1/+1 | | Ten | | ||
|| ------| | | | ||
|| | 2 | | | | ||
||-------------------------------| |-------------------------------| |-------------------------------||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Bone Golem | 2 |
|-------------------------------|
| Minion |
|-------------------------------|
| Gain +1/+1 whenever a minion |
| leaves play. |
| |
|------ ------|
| 1 | | 3 |
|-------------------------------|

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Bone Golem | 2 |
|-------------------------------|
| Minion |
|-------------------------------|
| Gain +1/+1 whenever a minion |
| leaves play. |
| |
|------ ------|
| 1 | | 3 |
|-------------------------------|

View File

@ -0,0 +1,77 @@
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Air Elemental | 0 || Earth Elemental | 3 || Bone Golem | 2 || Fire Elemental | 2 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Minion || Minion || Minion || Minion |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| || || Gain +1/+1 whenever a minion || Whenever an opponent's minion |
| || || leaves play. || enters play, deal 1 damage to |
| || || || it. |
|------ ------||------ ------||------ ------||------ ------|
| 1 | | 1 || 4 | | 4 || 1 | | 3 || 2 | | 2 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Potion Seller | 2 || Novice Pyromancer | 1 || Apprentice Summoner | 1 || Master Summoner | 3 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Minion || Minion || Minion || Minion |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| At the end of your turn, all || 1 | Deal 1 damage to target || 1 | Summon a 1/1 air || 2 | Summon up to three 1/1 |
| your minions gain +0/+1. ||------ minion ||------ elemental ||------ air elementals |
| || || || |
|------ ------||------ ------||------ ------||------ ------|
| 1 | | 3 || 0 | | 1 || 1 | | 1 || 2 | | 3 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------|
| Banish | 2 || Unsummon | 1 || Recharge | 1 |
|-------------------------------||-------------------------------||-------------------------------|
| Spell || Spell || Spell |
|-------------------------------||-------------------------------||-------------------------------|
| Destroy target minion or || Return target minion to its || Your ritual gains 3 charges |
| ritual || owner's hand || |
| || || |
| || || |
| || || |
|-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------|
| Disenchant | 1 || Raise Dead | 1 || Blizzard | 3 |
|-------------------------------||-------------------------------||-------------------------------|
| Spell || Spell || Spell |
|-------------------------------||-------------------------------||-------------------------------|
| Destroy the top enchantment || Resurrect the top minion in || Deal 2 damage to all minions |
| on target minion || your graveyard and set its || |
| || defence to 1 || |
| || || |
| || || |
|-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------|
| Giant Strength | 1 || Enrage | 2 || Haste | 1 |
|-------------------------------||-------------------------------||-------------------------------|
| Enchantment || Enchantment || Enchantment |
|-------------------------------||-------------------------------||-------------------------------|
| || || Enchanted minion gains +1 |
| || || action each turn |
| || || |
|------ ------||------ ------|| |
| +2 | | +2 || *2 | | *2 || |
|-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------|
| Magic Fatigue | 0 || Silence | 1 |
|-------------------------------||-------------------------------|
| Enchantment || Enchantment |
|-------------------------------||-------------------------------|
| Enchanted minion's activated || Enchanted minion cannot use |
| ability costs 2 more || abilities |
| || |
| || |
| || |
|-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------|
| Dark Ritual | 0 || Aura of Power | 1 || Standstill | 3 |
|-------------------------------||-------------------------------||-------------------------------|
| Ritual || Ritual || Ritual |
|-------------------------------||-------------------------------||-------------------------------|
| 1 | At the start of your || 1 | Whenever a minion enters|| 2 | Whenever a minion |
|------ turn, gain 1 mana ||------ play under your control,||------ enters play, destroy it |
| || it gains +1/+1 || |
| ------|| ------|| ------|
| | 5 || | 4 || | 4 |
|-------------------------------||-------------------------------||-------------------------------|

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Dark Ritual | 0 |
|-------------------------------|
| Ritual |
|-------------------------------|
| 1 | At the start of your |
|------ turn, gain 1 magic |
| |
| ------|
| | 5 |
|-------------------------------|

View File

@ -0,0 +1,19 @@
Air Elemental
Earth Elemental
Fire Elemental
Potion Seller
Novice Pyromancer
Apprentice Summoner
Master Summoner
Banish
Unsummon
Recharge
Disenchant
Raise Dead
Blizzard
Giant Strength
Magic Fatigue
Silence
Dark Ritual
Aura of Power
Standstill

View File

@ -0,0 +1,22 @@
|-------------------------------||-------------------------------||-------------------------------|
| Giant Strength | 1 || Enrage | 2 || Haste | 1 |
|-------------------------------||-------------------------------||-------------------------------|
| Enchantment || Enchantment || Enchantment |
|-------------------------------||-------------------------------||-------------------------------|
| || || Enchanted minion gains +1 |
| || || action each turn |
| || || |
|------ ------||------ ------|| |
| +2 | | +2 || *2 | | *2 || |
|-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------|
| Magic Fatigue | 0 || Silence | 1 |
|-------------------------------||-------------------------------|
| Enchantment || Enchantment |
|-------------------------------||-------------------------------|
| Enchanted minion's activated || Enchanted minion cannot use |
| ability costs 2 more || abilities |
| || |
| || |
| || |
|-------------------------------||-------------------------------|

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Enrage | 2 |
|-------------------------------|
| Enchantment |
|-------------------------------|
| |
| |
| |
|------ ------|
| *2 | | *2 |
|-------------------------------|

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Apprentice Summoner │ 1 ┃
┠─────────────────────────┴─────┨
┃ Minion ┃
┠─────┬─────────────────────────┨
┃ 1 │ Summon a 1/1 air elemen ┃
┠─────┘ tal ┃
┃ ┃
┠─────┐ ┌─────┨
┃ 1 │ │ 1 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Banish │ 2 ┃
┠─────────────────────────┴─────┨
┃ Spell ┃
┠───────────────────────────────┨
┃ Destroy target minion or ritu ┃
┃ al ┃
┃ ┃
┃ ┃
┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

View File

@ -0,0 +1,56 @@
╔═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗
║┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓║
║┃ ┃ ┃ ┃ ┃ Bone Golem │ 2 ┃║
║┃ ┃ ┃ ┃ ┠─────────────────────────┴─────┨║
║┃ ┃ ┃ Sean ┃ ┃ Minion ┃║
║┃ ┃ ┃ ┃ ┠───────────────────────────────┨║
║┃ ┃ ┃ ┃ ┃ Gain +1/+1 whenever a minion ┃║
║┃ ┃ ┃ ┃ ┃ leaves play. ┃║
║┃ ┃ ┃ ┃ ┃ ┃║
║┃ ┃ ┠─────┐ ┌─────┨ ┠─────┐ ┌─────┨║
║┃ ┃ ┃ 20 │ │ 0 ┃ ┃ 2 │ │ 1 ┃║
║┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ ┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛ ┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛║
║┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓║
║┃ Novice Pyromancer │ 1 ┃┃ Tireless Healer │ 2 ┃┃ Earth Elemental │ 3 ┃┃ ┃┃ ┃║
║┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┃ ┃┃ ┃║
║┃ Minion ┃┃ Minion ┃┃ Minion ┃┃ ┃┃ ┃║
║┠─────┬─────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨┃ ┃┃ ┃║
║┃ 5 │ Deal 1 damage to target ┃┃ At the end of your turn, all ┃┃ ┃┃ ┃┃ ┃║
║┠─────┘ minion ┃┃ your minions gain +0/+1. ┃┃ ┃┃ ┃┃ ┃║
║┃ ┃┃ ┃┃ ┃┃ ┃┃ ┃║
║┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨┃ ┃┃ ┃║
║┃ 8 │ │ 24 ┃┃ 1 │ │ 10 ┃┃ 4 │ │ 8 ┃┃ ┃┃ ┃║
║┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛║
╠═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║ ║
║ ███████╗ ██████╗ ██████╗ ██████╗███████╗██████╗ ██╗ ██╗ ║
║ ██╔════╝██╔═══██╗██╔══██╗██╔════╝██╔════╝██╔══██╗╚██╗ ██╔╝ ║
║ ███████╗██║ ██║██████╔╝██║ █████╗ ██████╔╝ ╚████╔╝ ║
║ ╚════██║██║ ██║██╔══██╗██║ ██╔══╝ ██╔══██╗ ╚██╔╝ ║
║ ███████║╚██████╔╝██║ ██║╚██████╗███████╗██║ ██║ ██║ ║
║ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝╚═╝ ╚═╝ ╚═╝ ║
║ ║
╠═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╣
║┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓║
║┃ Air Elemental │ 0 ┃┃ Apprentice Summoner │ 1 ┃┃ Fire Elemental │ 2 ┃┃ ┃┃ ┃║
║┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┃ ┃┃ ┃║
║┃ Minion ┃┃ Minion ┃┃ Minion ┃┃ ┃┃ ┃║
║┠───────────────────────────────┨┠─────┬─────────────────────────┨┠───────────────────────────────┨┃ ┃┃ ┃║
║┃ ┃┃ 1 │ Summon a 1/1 air elemen ┃┃ Whenever an opponent's minion ┃┃ ┃┃ ┃║
║┃ ┃┠─────┘ tal ┃┃ enters play, deal 1 damage to ┃┃ ┃┃ ┃║
║┃ ┃┃ ┃┃ it. ┃┃ ┃┃ ┃║
║┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨┃ ┃┃ ┃║
║┃ 1 │ │ 1 ┃┃ 2 │ │ 2 ┃┃ 3 │ │ 2 ┃┃ ┃┃ ┃║
║┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛║
║┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓ ┏━━━━━┯━━━━━━━━━━━━━━━━━━━┯━━━━━┓ ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓║
║┃ Aura of Power │ 1 ┃ ┃ 16 │ │ 3 ┃ ┃ ┃║
║┠─────────────────────────┴─────┨ ┠─────┘ └─────┨ ┃ ┃║
║┃ Ritual ┃ ┃ ┃ ┃ ┃║
║┠─────┬─────────────────────────┨ ┃ ┃ ┃ ┃║
║┃ 1 │ Whenever a minion enter ┃ ┃ ┃ ┃ ┃║
║┠─────┘ s play under your contr ┃ ┃ ┃ ┃ ┃║
║┃ ol, it gains +1/+1 ┃ ┃ Ten ┃ ┃ ┃║
║┃ ┌─────┨ ┃ ┃ ┃ ┃║
║┃ │ 2 ┃ ┃ ┃ ┃ ┃║
║┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛║
╚═════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╝

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Bone Golem │ 2 ┃
┠─────────────────────────┴─────┨
┃ Minion ┃
┠───────────────────────────────┨
┃ Gain +1/+1 whenever a minion ┃
┃ leaves play. ┃
┃ ┃
┠─────┐ ┌─────┨
┃ 1 │ │ 3 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,77 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Air Elemental │ 0 ┃┃ Earth Elemental │ 3 ┃┃ Bone Golem │ 2 ┃┃ Fire Elemental │ 2 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Minion ┃┃ Minion ┃┃ Minion ┃┃ Minion ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ ┃┃ ┃┃ Gain +1/+1 whenever a minion ┃┃ Whenever an opponent's minion ┃
┃ ┃┃ ┃┃ leaves play. ┃┃ enters play, deal 1 damage to ┃
┃ ┃┃ ┃┃ ┃┃ it. ┃
┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨
┃ 1 │ │ 1 ┃┃ 4 │ │ 4 ┃┃ 1 │ │ 3 ┃┃ 2 │ │ 2 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Potion Seller │ 2 ┃┃ Novice Pyromancer │ 1 ┃┃ Apprentice Summoner │ 1 ┃┃ Master Summoner │ 3 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Minion ┃┃ Minion ┃┃ Minion ┃┃ Minion ┃
┠───────────────────────────────┨┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨
┃ At the end of your turn, all ┃┃ 1 │ Deal 1 damage to target ┃┃ 1 │ Summon a 1/1 air elemen ┃┃ 2 │ Summon up to three 1/1 ┃
┃ your minions gain +0/+1. ┃┠─────┘ minion ┃┠─────┘ tal ┃┠─────┘ air elementals ┃
┃ ┃┃ ┃┃ ┃┃ ┃
┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨
┃ 1 │ │ 3 ┃┃ 0 │ │ 1 ┃┃ 1 │ │ 1 ┃┃ 2 │ │ 3 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Banish │ 2 ┃┃ Unsummon │ 1 ┃┃ Recharge │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Spell ┃┃ Spell ┃┃ Spell ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ Destroy target minion or ritu ┃┃ Return target minion to its o ┃┃ Your ritual gains 3 charges ┃
┃ al ┃┃ wner's hand ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Disenchant │ 1 ┃┃ Raise Dead │ 1 ┃┃ Blizzard │ 3 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Spell ┃┃ Spell ┃┃ Spell ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ Destroy the top enchantment o ┃┃ Resurrect the top minion in y ┃┃ Deal 2 damage to all minions ┃
┃ n target minion ┃┃ our graveyard and set its def ┃┃ ┃
┃ ┃┃ ence to 1 ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Giant Strength │ 1 ┃┃ Enrage │ 2 ┃┃ Haste │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Enchantment ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ ┃┃ ┃┃ Enchanted minion gains +1 act ┃
┃ ┃┃ ┃┃ ion each turn ┃
┃ ┃┃ ┃┃ ┃
┠─────┐ ┌─────┨┠─────┐ ┌─────┨┃ ┃
┃ +2 │ │ +2 ┃┃ *2 │ │ *2 ┃┃ ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Magic Fatigue │ 0 ┃┃ Silence │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨
┃ Enchanted minion's activated ┃┃ Enchanted minion cannot use a ┃
┃ ability costs 2 more ┃┃ bilities ┃
┃ ┃┃ ┃
┃ ┃┃ ┃
┃ ┃┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Dark Ritual │ 0 ┃┃ Aura of Power │ 1 ┃┃ Standstill │ 3 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Ritual ┃┃ Ritual ┃┃ Ritual ┃
┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨
┃ 1 │ At the start of your tu ┃┃ 1 │ Whenever a minion enter ┃┃ 2 │ Whenever a minion enter ┃
┠─────┘ rn, gain 1 mana ┃┠─────┘ s play under your contr ┃┠─────┘ s play, destroy it ┃
┃ ┃┃ ol, it gains +1/+1 ┃┃ ┃
┃ ┌─────┨┃ ┌─────┨┃ ┌─────┨
┃ │ 5 ┃┃ │ 4 ┃┃ │ 4 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Dark Ritual │ 0 ┃
┠─────────────────────────┴─────┨
┃ Ritual ┃
┠─────┬─────────────────────────┨
┃ 1 │ At the start of your tu ┃
┠─────┘ rn, gain 1 magic ┃
┃ ┃
┃ ┌─────┨
┃ │ 5 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,22 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Giant Strength │ 1 ┃┃ Enrage │ 2 ┃┃ Haste │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Enchantment ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ ┃┃ ┃┃ Enchanted minion gains +1 act ┃
┃ ┃┃ ┃┃ ion each turn ┃
┃ ┃┃ ┃┃ ┃
┠─────┐ ┌─────┨┠─────┐ ┌─────┨┃ ┃
┃ +2 │ │ +2 ┃┃ *2 │ │ *2 ┃┃ ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Magic Fatigue │ 0 ┃┃ Silence │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨
┃ Enchanted minion's activated ┃┃ Enchanted minion cannot use a ┃
┃ ability costs 2 more ┃┃ bilities ┃
┃ ┃┃ ┃
┃ ┃┃ ┃
┃ ┃┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Enrage │ 2 ┃
┠─────────────────────────┴─────┨
┃ Enchantment ┃
┠───────────────────────────────┨
┃ ┃
┃ ┃
┃ ┃
┠─────┐ ┌─────┨
┃ *2 │ │ *2 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Silence │ 1 ┃┃ Recharge │ 1 ┃┃ Novice Pyromancer │ 1 ┃┃ Earth Elemental │ 3 ┃┃ Giant Strength │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Spell ┃┃ Minion ┃┃ Minion ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠─────┬─────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ Enchanted minion cannot use a ┃┃ Your ritual gains 3 charges ┃┃ 1 │ Deal 1 damage to target ┃┃ ┃┃ ┃
┃ bilities ┃┃ ┃┠─────┘ minion ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨
┃ ┃┃ ┃┃ 0 │ │ 1 ┃┃ 4 │ │ 4 ┃┃ +2 │ │ +2 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,33 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Novice Pyromancer │ 1 ┃
┠─────────────────────────┴─────┨
┃ Minion ┃
┠─────┬─────────────────────────┨
┃ 5 │ Deal 1 damage to target ┃
┠─────┘ minion ┃
┃ ┃
┠─────┐ ┌─────┨
┃ 8 │ │ 24 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Giant Strength │ 1 ┃┃ Magic Fatigue │ 0 ┃┃ Haste │ 1 ┃┃ Giant Strength │ 1 ┃┃ Magic Fatigue │ 0 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Enchantment ┃┃ Enchantment ┃┃ Enchantment ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ ┃┃ Enchanted minion's activated ┃┃ Enchanted minion gains +1 act ┃┃ ┃┃ Enchanted minion's activated ┃
┃ ┃┃ ability costs 2 more ┃┃ ion each turn ┃┃ ┃┃ ability costs 2 more ┃
┃ ┃┃ ┃┃ ┃┃ ┃┃ ┃
┠─────┐ ┌─────┨┃ ┃┃ ┃┠─────┐ ┌─────┨┃ ┃
┃ +2 │ │ +2 ┃┃ ┃┃ ┃┃ +2 │ │ +2 ┃┃ ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Enrage │ 2 ┃┃ Haste │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Enchantment ┃┃ Enchantment ┃
┠───────────────────────────────┨┠───────────────────────────────┨
┃ ┃┃ Enchanted minion gains +1 act ┃
┃ ┃┃ ion each turn ┃
┃ ┃┃ ┃
┠─────┐ ┌─────┨┃ ┃
┃ *2 │ │ *2 ┃┃ ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

View File

@ -0,0 +1,22 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Air Elemental │ 0 ┃┃ Earth Elemental │ 3 ┃┃ Bone Golem │ 2 ┃┃ Fire Elemental │ 2 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Minion ┃┃ Minion ┃┃ Minion ┃┃ Minion ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ ┃┃ ┃┃ Gain +1/+1 whenever a minion ┃┃ Whenever an opponent's minion ┃
┃ ┃┃ ┃┃ leaves play. ┃┃ enters play, deal 1 damage to ┃
┃ ┃┃ ┃┃ ┃┃ it. ┃
┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨
┃ 1 │ │ 1 ┃┃ 4 │ │ 4 ┃┃ 1 │ │ 3 ┃┃ 2 │ │ 2 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Potion Seller │ 2 ┃┃ Novice Pyromancer │ 1 ┃┃ Apprentice Summoner │ 1 ┃┃ Master Summoner │ 3 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Minion ┃┃ Minion ┃┃ Minion ┃┃ Minion ┃
┠───────────────────────────────┨┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨
┃ At the end of your turn, all ┃┃ 1 │ Deal 1 damage to target ┃┃ 1 │ Summon a 1/1 air elemen ┃┃ 2 │ Summon up to three 1/1 ┃
┃ your minions gain +0/+1. ┃┠─────┘ minion ┃┠─────┘ tal ┃┠─────┘ air elementals ┃
┃ ┃┃ ┃┃ ┃┃ ┃
┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨┠─────┐ ┌─────┨
┃ 1 │ │ 3 ┃┃ 0 │ │ 1 ┃┃ 1 │ │ 1 ┃┃ 2 │ │ 3 ┃
┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━┷━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Dark Ritual │ 0 ┃┃ Aura of Power │ 1 ┃┃ Standstill │ 3 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Ritual ┃┃ Ritual ┃┃ Ritual ┃
┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨┠─────┬─────────────────────────┨
┃ 1 │ At the start of your tu ┃┃ 1 │ Whenever a minion enter ┃┃ 2 │ Whenever a minion enter ┃
┠─────┘ rn, gain 1 magic ┃┠─────┘ s play under your contr ┃┠─────┘ s play, destroy it ┃
┃ ┃┃ ol, it gains +1/+1 ┃┃ ┃
┃ ┌─────┨┃ ┌─────┨┃ ┌─────┨
┃ │ 5 ┃┃ │ 4 ┃┃ │ 4 ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━┷━━━━━┛

View File

@ -0,0 +1,11 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Silence │ 1 ┃
┠─────────────────────────┴─────┨
┃ Enchantment ┃
┠───────────────────────────────┨
┃ Enchanted minion cannot use a ┃
┃ bilities ┃
┃ ┃
┃ ┃
┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

View File

@ -0,0 +1,22 @@
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Banish │ 2 ┃┃ Unsummon │ 1 ┃┃ Recharge │ 1 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Spell ┃┃ Spell ┃┃ Spell ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ Destroy target minion or ritu ┃┃ Return target minion to its o ┃┃ Your ritual gains 3 charges ┃
┃ al ┃┃ wner's hand ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓┏━━━━━━━━━━━━━━━━━━━━━━━━━┯━━━━━┓
┃ Disenchant │ 1 ┃┃ Raise Dead │ 1 ┃┃ Blizzard │ 3 ┃
┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨┠─────────────────────────┴─────┨
┃ Spell ┃┃ Spell ┃┃ Spell ┃
┠───────────────────────────────┨┠───────────────────────────────┨┠───────────────────────────────┨
┃ Destroy the top enchantment o ┃┃ Resurrect the top minion in y ┃┃ Deal 2 damage to all minions ┃
┃ n target minion ┃┃ our graveyard and set its def ┃┃ ┃
┃ ┃┃ ence to 1 ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┃ ┃┃ ┃┃ ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

View File

@ -0,0 +1,11 @@
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Silence | 1 || Potion Seller | 2 || Bone Golem | 2 || Blizzard | 3 || Aura of Power | 1 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Enchantment || Minion || Minion || Spell || Ritual |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Enchanted minion cannot use || At the end of your turn, all || Gain +1/+1 whenever a minion || Deal 2 damage to all minions || 1 | Whenever a minion enters|
| abilities || your minions gain +0/+1. || leaves play. || ||------ play under your control,|
| || || || || it gains +1/+1 |
| ||------ ------||------ ------|| || ------|
| || 1 | | 3 || 1 | | 3 || || | 4 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|

View File

@ -0,0 +1,10 @@
Commands: help -- Display this message.
end -- End the current player's turn.
quit -- End the game.
attack minion other-minion -- Orders minion to attack other-minion.
attack minion -- Orders minion to attack the opponent.
play card [target-player target-card] -- Play card, optionally targeting target-card owned by target-player.
use minion [target-player target-card] -- Use minion's special ability, optionally targeting target-card owned by target-player.
inspect minion -- View a minion's card and all enchantments on that minion.
hand -- Describe all cards in your hand.
board -- Describe all cards on the board.

View File

@ -0,0 +1,33 @@
|-------------------------------|
| Air Elemental | 0 |
|-------------------------------|
| Minion |
|-------------------------------|
| |
| |
| |
|------ ------|
| 26 | | 26 |
|-------------------------------|
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Giant Strength | 1 || Giant Strength | 1 || Giant Strength | 1 || Giant Strength | 1 || Giant Strength | 1 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Enchantment || Enchantment || Enchantment || Enchantment || Enchantment |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| || || || || |
| || || || || |
| || || || || |
|------ ------||------ ------||------ ------||------ ------||------ ------|
| +2 | | +2 || +2 | | +2 || +2 | | +2 || +2 | | +2 || +2 | | +2 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------|
| Giant Strength | 1 || Enrage | 2 |
|-------------------------------||-------------------------------|
| Enchantment || Enchantment |
|-------------------------------||-------------------------------|
| || |
| || |
| || |
|------ ------||------ ------|
| +2 | | +2 || *2 | | *2 |
|-------------------------------||-------------------------------|

View File

@ -0,0 +1,22 @@
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Air Elemental | 0 || Earth Elemental | 3 || Bone Golem | 2 || Fire Elemental | 2 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Minion || Minion || Minion || Minion |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| || || Gain +1/+1 whenever a minion || Whenever an opponent's minion |
| || || leaves play. || enters play, deal 1 damage to |
| || || || it. |
|------ ------||------ ------||------ ------||------ ------|
| 1 | | 1 || 4 | | 4 || 1 | | 3 || 2 | | 2 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Potion Seller | 2 || Novice Pyromancer | 1 || Apprentice Summoner | 1 || Master Summoner | 3 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| Minion || Minion || Minion || Minion |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|
| At the end of your turn, all || 1 | Deal 1 damage to target || 1 | Summon a 1/1 air || 2 | Summon up to three 1/1 |
| your minions gain +0/+1. ||------ minion ||------ elemental ||------ air elementals |
| || || || |
|------ ------||------ ------||------ ------||------ ------|
| 1 | | 3 || 0 | | 1 || 1 | | 1 || 2 | | 3 |
|-------------------------------||-------------------------------||-------------------------------||-------------------------------|

View File

@ -0,0 +1,11 @@
|-------------------------------||-------------------------------||-------------------------------|
| Dark Ritual | 0 || Aura of Power | 1 || Standstill | 3 |
|-------------------------------||-------------------------------||-------------------------------|
| Ritual || Ritual || Ritual |
|-------------------------------||-------------------------------||-------------------------------|
| 1 | At the start of your || 1 | Whenever a minion enters|| 2 | Whenever a minion |
|------ turn, gain 1 magic ||------ play under your control,||------ enters play, destroy it |
| || it gains +1/+1 || |
| ------|| ------|| ------|
| | 5 || | 4 || | 4 |
|-------------------------------||-------------------------------||-------------------------------|

View File

@ -0,0 +1,11 @@
|-------------------------------|
| Silence | 1 |
|-------------------------------|
| Enchantment |
|-------------------------------|
| Enchanted minion cannot use |
| abilities |
| |
| |
| |
|-------------------------------|

View File

@ -0,0 +1,22 @@
|-------------------------------||-------------------------------||-------------------------------|
| Banish | 2 || Unsummon | 1 || Recharge | 1 |
|-------------------------------||-------------------------------||-------------------------------|
| Spell || Spell || Spell |
|-------------------------------||-------------------------------||-------------------------------|
| Destroy target minion or || Return target minion to its || Your ritual gains 3 charges |
| ritual || owner's hand || |
| || || |
| || || |
| || || |
|-------------------------------||-------------------------------||-------------------------------|
|-------------------------------||-------------------------------||-------------------------------|
| Disenchant | 1 || Raise Dead | 1 || Blizzard | 3 |
|-------------------------------||-------------------------------||-------------------------------|
| Spell || Spell || Spell |
|-------------------------------||-------------------------------||-------------------------------|
| Destroy the top enchantment || Resurrect the top minion in || Deal 2 damage to all minions |
| on target minion || your graveyard and set its. || |
| || defence to 1 || |
| || || |
| || || |
|-------------------------------||-------------------------------||-------------------------------|

Binary file not shown.