コード例 #1
0
        public async Task <bool> UpdateCharacter(int index, PonyData pony)
        {
            if (m_data == null || index >= m_data.Count)
            {
                return(false);
            }
            CharsMgr.ValidatePonyData(pony);
            if (index == -1)
            {
                if (m_data.Count >= CharsMgr.MaxChars)
                {
                    return(false);
                }
                var character = await ServerDB.CreateCharacterAsync(_user.ID, pony);

                if (character == null)
                {
                    return(false);
                }
                m_data.Add(character);
            }
            else
            {
                var character = m_data[index];
                character.Pony = pony;
                if (!await ServerDB.UpdatePonyAsync(character))
                {
                    return(false);
                }
            }
            return(true);
        }