class CreateParticipants < ActiveRecord::Migration[8.1]
  def change
    create_table :participants do |t|
      t.references :user, null: false, foreign_key: true
      t.references :game, null: false, foreign_key: true
      t.string :power, null: true
      t.boolean :orders_submitted, default: false, null: false
      t.boolean :is_administrator, default: false, null: false

      t.timestamps
    end
    
    add_index :participants, [:user_id, :game_id], unique: true
    add_index :participants, [:game_id, :power], unique: true, where: "power IS NOT NULL"
  end
end
