Итак, проект представляет собой онлайн-MMO.Он использует актив uMMORPG2D (который, в свою очередь, использует UNET).
Код, о котором идет речь, работал в течение последней недели без происшествий, и за это время никак не изменялся.Однако теперь он внезапно выбрасывает эту ошибку.Я в растерянности.
Чтобы еще больше усложнить ситуацию, на моей собственной сборке / версии проекта все работает нормально.Я не получаю эту ошибку.Однако друг, который запускает ту же самую сборку / версию, действительно получает эту ошибку.
Строка, которая утверждает, что была разбита, чрезвычайно проста (не может быть проще).Все, что он делает, это устанавливает одно целое число равным другому ... единственная потенциальная проблема - это целое целое, это [SyncVar] (но, опять же, это имело место в течение последней недели +)
Нижеявляется релевантным кодом;
[SyncVar]
internal int mainID = 0;
public void SetIndices(int bodyIndex, [...])
{
mainID = bodyIndex;
[...]
}
SetIndices вызывается из
int bodyID = Convert.ToInt32((long)mainrow[5]);
[...]
charCreator.SetIndices(bodyID, [...]);
Нет исключения приведения или чего-либо подобного (насколько я знаю), поэтому я не вижу причин, почемуэто может вызвать ошибку?
Фактическая ошибка:
InvalidProgramException: Неверный код IL в CharacterCreator: set_NetworkmainID (int): IL_0011: вызов
0x2b00000a