syntax = "proto2";
import "game_commands.proto";

message Command_CreateToken {
    enum TargetMode {
        // Attach the target to the token
        ATTACH_TO = 0;
        // Transform the target into the token
        TRANSFORM_INTO = 1;
    }

    extend GameCommand {
        optional Command_CreateToken ext = 1010;
    }
    optional string zone = 1;
    optional string card_name = 2;
    optional string color = 3;
    optional string pt = 4;
    optional string annotation = 5;
    optional bool destroy_on_zone_change = 6;
    optional sint32 x = 7;
    optional sint32 y = 8;
    optional string target_zone = 9;
    optional sint32 target_card_id = 10 [default = -1];

    // What to do with the target card. Ignored if there is no target card.
    optional TargetMode target_mode = 11;

    optional string card_provider_id = 12;
    optional bool face_down = 13;
}
