Beispiel #1
0
    public void Initialize(int tier)
    {
        var key    = new SpellKey(category, tier);
        var spells = Repository.Get <Spells>(References.Spells);

        spell            = spells.GetRandom(key);
        title.text       = spell.Title;
        thumbnail.sprite = spell.Thumbnail;
    }
Beispiel #2
0
    public SpellBase GetRandom(SpellKey key)
    {
        while (!all.ContainsKey(key))
        {
            key.Downgrade();
        }

        var list = all[key];

        return(list[Random.Range(0, list.Count)]);
    }
Beispiel #3
0
    private void Register(SpellBase spell)
    {
        var key = new SpellKey(spell.Category, spell.Tier);

        if (all.TryGetValue(key, out var list))
        {
            list.Add(spell);
        }
        else
        {
            all.Add(key, new List <SpellBase>()
            {
                spell
            });
        }
    }
Beispiel #4
0
 internal SpellVar(SpellVarDto dto)
 {
     Link  = dto.Link;
     Coeff = dto.Coeff.ToImmutableArray();
     Key   = Enum.Parse <SpellKey>(dto.Key, true);
 }