defmodule Odinsea.Database.Schema.SkillMacro do @moduledoc """ Ecto schema for the skillmacros table. Represents skill macros (combo skills) for characters. """ use Ecto.Schema import Ecto.Changeset @primary_key {:id, :id, autogenerate: true} schema "skillmacros" do field :characterid, :integer, default: 0 field :position, :integer, default: 0 field :skill1, :integer, default: 0 field :skill2, :integer, default: 0 field :skill3, :integer, default: 0 field :name, :string field :shout, :integer, default: 0 belongs_to :character, Odinsea.Database.Schema.Character, foreign_key: :characterid, references: :id, define_field: false end @doc """ Changeset for creating/updating a skill macro. """ def changeset(skill_macro, attrs) do skill_macro |> cast(attrs, [:characterid, :position, :skill1, :skill2, :skill3, :name, :shout]) |> validate_required([:characterid, :position]) end end