예제 #1
0
    public void CreateCharacterSpells(ref WS_PlayerData.CharacterObject objCharacter)
    {
        DataTable CreateInfoSpells = new();

        WorldServiceLocator._WorldServer.WorldDatabase.Query($"SELECT * FROM playercreateinfo_spell WHERE race = {(int)objCharacter.Race} AND class = {(int)objCharacter.Classe};", ref CreateInfoSpells);
        if (CreateInfoSpells.Rows.Count <= 0)
        {
            WorldServiceLocator._WorldServer.Log.WriteLine(LogType.FAILED, "No information found in playercreateinfo_spell table Race: {0}, Class: {1}", objCharacter.Race, objCharacter.Classe);
        }
        IEnumerator enumerator = default;

        try
        {
            enumerator = CreateInfoSpells.Rows.GetEnumerator();
            while (enumerator.MoveNext())
            {
                DataRow row = (DataRow)enumerator.Current;
                objCharacter.LearnSpell(row.As <int>("Spell"));
            }
        }
        finally
        {
            if (enumerator is IDisposable)
            {
                (enumerator as IDisposable).Dispose();
            }
        }
    }