Добрый день. Решил сделать вывод уровня персонажа в титул, если он использует визуальную броню. тип данных у титула PWCHAR, тип данных переменной nLevel - int. соответственно, делаю преобразование через reinterpret_cast , компилятор выдает предупреждение, о разных размерах типа данных при преобразовании, на выходе, естественно при включении визуальной брони, получаю краш сервера при отправке пакета userinfo. если же, я делаю титул такой же как ник, они имеют одинаковый тип данных, все проходит хорошо, титул становится как ник. Вот 2 кода, 1 устанавливает в титул ник, второй который должен выводить в титул Уровень.
собственно вопрос, как мне придумать костыль, чтобы полученный результат от переменной nLevel преобразовать в тип PWCHAR?
C++:
PWCHAR wTitle = va_arg(tag, PWCHAR); //инициализируем переменную
if(pUser->pED->visualArmorUser.armorId > 0) //условие, усли одета визуальная броня
{
PWCHAR wNewTitle = pUser->pSD->wszName; //инициализируем переменную для нового титула = никнейм
wTitle = wNewTitle; //устанавливаем переменной титул = значение переменной новый титул.
/*s*/ Packet.WriteS(wTitle); //отправляем пакет с новым титулом
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //pledge_id
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //pledge_crest_id
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //ally_id
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //ally_crest_id
}
C++:
PWCHAR wTitle = va_arg(tag, PWCHAR); //инициализируем переменную
if(pUser->pED->visualArmorUser.armorId > 0) //условие, усли одета визуальная броня
{
PWCHAR wNewTitle = reinterpret_cast<PWCHAR>(pUser->pSD->nLevel); //инициализируем переменную для нового титула = уровень персонажа
wTitle = wNewTitle; //устанавливаем переменной титул = значение переменной новый титул.
/*s*/ Packet.WriteS(wTitle); //отправляем пакет с новым титулом
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //pledge_id
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //pledge_crest_id
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //ally_id
/*d*/ Packet.WriteD(va_arg(tag, DWORD)); //ally_crest_id
}
собственно вопрос, как мне придумать костыль, чтобы полученный результат от переменной nLevel преобразовать в тип PWCHAR?