API for Magic Coding in C
Args in all caps should use special constants as the arguments (see manalink.h for a list of constants)
Please leave subs in alphabetical order for easier scanning.
Card Status Functions
- get_card_data(player, card)
- get_card_instance(player, card)
- has_color(player, card, COLOR) [unimplemented]
- has_card_type(player, card, CARD_TYPE) [unimplemented]
- has_creature_type(player, card, CREATURE_TYPE)
- is_tapped(player, card)
Game State Functions
- count_graveyard(player)
- does_player_control_artifact(player) [unimplemented]
- has_mana(player, COLOR, amount)
- has_mana_multi(player, colorless, black, blue, green, red, white)
- has_threshold(player)
- is_artifact_in_play() [unimplemented]
Cost Paying Functions
- charge_mana(player, COLOR, amount)
- charge_mana_multi(player, colorless, black, blue, green, red, white)
- tap_card(player, card)
Targeting Functions
- target_creature() [unimplemented]
- target_player() [unimplemented]
Creature Abilities
- void boost_creature_type(int player, int card, event_t event, creature_type_t type, int power, int toughness, int abilities, int flags);
- check_legend_rule(player, card, event) [I think this should be renamed legendary, since the sub actually kills the legend]
- haste(player, card, event) [unimplemented]
- islandhome(player, card, event)
- lifelink(player, card, event) [unimplemented]
- vigilence(player, card, event) [unimplemented]
Actions
- add_one_mana_any_color(player)
- int damage_creature(int target_controller, int target_card, int amount, int source_controller, int source_card)
- void draw_a_card(int player)
- void draw_cards(int player, int amount)
- void discard(int player, int is_random, int unknown) [The last param appears to be unused]
- gain_life(player, amount)
- generate_token(player, manalink.csv card id);
- kill_card(player, card, KILL_METHOD)
- produce_mana(player, COLOR, amount)
Random Stuff
