hensei-api/app/models/skill.rb
2025-03-02 16:24:39 -08:00

24 lines
844 B
Ruby

# frozen_string_literal: true
class Skill < ApplicationRecord
has_many :skill_values
has_many :skill_effects
has_many :effects, through: :skill_effects
has_many :character_skills
has_many :weapon_skills
has_many :summon_calls
has_many :charge_attacks
has_many :alt_character_skills, class_name: 'CharacterSkill', foreign_key: 'alt_skill_id'
has_many :alt_summon_calls, class_name: 'SummonCall', foreign_key: 'alt_skill_id'
has_many :alt_charge_attacks, class_name: 'ChargeAttack', foreign_key: 'alt_skill_id'
validates :name_en, presence: true
validates :skill_type, presence: true
enum skill_type: { character: 1, weapon: 2, summon_call: 3, charge_attack: 4 }
enum border_type: { damage: 1, healing: 2, buff: 3, debuff: 4, field: 5 }
def value_at_level(level)
skill_values.find_by(level: level)
end
end