logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Interface IAchievementDefinitionSource

    Application port that answers "which achievements does this project declare". The composition root reads it once at install time and hands the result to Services.AchievementDefinitionRegistryBuilder.

    Namespace: Serenity.Achievements.Application.Interfaces.Services
    Assembly: Serenity.Achievements.Application.dll
    Syntax
    public interface IAchievementDefinitionSource
    Remarks

    A port rather than a direct dependency because where definitions come from is an engine decision: the Unity module loads one asset per achievement by Addressables label, a test hands over a literal list, and a project that generates them at build time supplies its own source without touching the installer.

    Methods

    GetDefinitions()

    Every achievement this project declares, in no particular order.

    Declaration
    IReadOnlyList<AchievementDefinition> GetDefinitions()
    Returns
    Type Description
    IReadOnlyList<AchievementDefinition>

    The declared definitions. Never null; empty is a valid answer.

    In this article
    © 2026 Serenity. All Rights Reserved