Files
odinsea-elixir/lib/odinsea/database/schema/wz_mob_skill_data.ex
2026-02-14 23:58:01 -07:00

44 lines
1.2 KiB
Elixir

defmodule Odinsea.Database.Schema.WzMobSkillData do
@moduledoc """
Ecto schema for the wz_mobskilldata table.
Represents monster skill data from WZ files.
"""
use Ecto.Schema
import Ecto.Changeset
@primary_key {:id, :id, autogenerate: true}
schema "wz_mobskilldata" do
field :skillid, :integer
field :level, :integer
field :hp, :integer, default: 100
field :mpcon, :integer, default: 0
field :x, :integer, default: 1
field :y, :integer, default: 1
field :time, :integer, default: 0
field :prop, :integer, default: 100
field :limit, :integer, default: 0
field :spawneffect, :integer, default: 0
field :interval, :integer, default: 0
field :summons, :string, default: ""
field :ltx, :integer, default: 0
field :lty, :integer, default: 0
field :rbx, :integer, default: 0
field :rby, :integer, default: 0
field :once, :integer, default: 0
end
@doc """
Changeset for WZ mob skill data.
"""
def changeset(wz_mob_skill_data, attrs) do
wz_mob_skill_data
|> cast(attrs, [
:skillid, :level, :hp, :mpcon, :x, :y, :time, :prop, :limit,
:spawneffect, :interval, :summons, :ltx, :lty, :rbx, :rby, :once
])
|> validate_required([:skillid, :level])
end
end