Jack_Savage
Участник
- 150
- 17
Про то что есть W знал. А вот про то что у них кодировка разная не знал. Спасибки :3A = ANSI. это для разграничения типов строк, есть ещё W = Wide char, юникод.
Про то что есть W знал. А вот про то что у них кодировка разная не знал. Спасибки :3A = ANSI. это для разграничения типов строк, есть ещё W = Wide char, юникод.
создавая второй и разного объёма, я проверял, получится ли сделать динамическую память, т.к. объявить через char name[size] массив с неопределённым изначально объёмом не получится. С этим я всё сделал как задумал.У тебя размер sstring равен 144, но ты пытаешься получить доступ к 146 элементу. И вообще, странное объявление ppts. И потом ещё забыл освобождать память выделенную через new, что приведет к утечке.
http://cpp.sh/3mkpg
(размер указателя (char*) зависит от битности системы).
а вот за это спасибо, не знал.забыл освобождать память выделенную через new, что приведет к утечке.
у меня 64-ая, если вдруг что(размер указателя (char*) зависит от битности системы).
хочу сделать строку размером под ширину экрана, но никак не получалось нормально создать динамический массив, он то не читался, то выдавал нули, то я его по ошибке приводил в виде адреса, а не указателя.Это что ты опять такое пытаешься сделать? Может есть вариант проще, чем этот.
Я привел пример с sizeof(char*) к тому, что ты используешь memset, но очищается там первые 4/8 байт, а не сам размер массива.у меня 64-ая, если вдруг что
Сижу рофлю, хотя примерно такой ответ я и ождал увидеть.Потому что
#define DrawText DrawTextA есть
Следовательно и функция DrawTextA
Ну я подумал а почему бы не присобачить B)
Опиши, что ты конкретно хочешь. Если ты хочешь, чтобы текст не было больше ширины экрана, то это полная хуйня.хочу сделать строку размером под ширину экрана, но никак не получалось нормально создать динамический массив, он то не читался, то выдавал нули, то я его по ошибке приводил в виде адреса, а не указателя.
не, я хотел создать бегущую строку, где символы выходя за экран будут появляться с другой его стороны, но проблема была в том, что надо как-то просчитать, что символы реально ушли за экран - и я каким-то чудом надумал как это сделать, но мне нужна была строка размером с ширину экрана, чтобы было удобно её двигать - путём перемещения позиции символов в строке, чтобы не напрягать лишний раз графику (когда посмотрел пример СР_тима, пришёл к выводу, что мне требуется вывести на разных местах лишь по одной из двух координат, и всё это можно решить без дополнительного рендера, просто сделав часть экрана - строкой)Опиши, что ты конкретно хочешь. Если ты хочешь, чтобы текст не было больше ширины экрана, то это полная хуйня.
Примерно так. То что ты видишь на примере: попытка сделать именно бегающий текст, который основан был бы на двух рендерах, но поскольку я лишь начал создавать широкую строку, ещё не изменил принцип работы - так что да, я буду переделывать так, чтобы символы раз в какое-то время (или не обязательно время, что-нибудь ещё может возьму за систему исчисления), символы приближались к концу строки, а последний символ перемещался в началоТы хочешь сделать бегущую строку с указанием количества символов для отображения и со скоростью смещения отображения символа в милисекундах?
Ну а что)Сижу рофлю, хотя примерно такой ответ я и ождал увидеть.
enum GameMessages
{
ID_DATA = ID_USER_PACKET_ENUM + 1,
OUT_SEND_SYNC,
};
client
float *position = (*(DWORD *)0xB6F5F0) ? (float *)(*(DWORD *)(*(DWORD *)0xB6F5F0 + 0x14) + 0x30) : NULL;
RakNet::BitStream bsOut;
bsOut.Write((RakNet::MessageID)OUT_SEND_SYNC);
bsOut.Write(position[0]);
bsOut.Write(position[1]);
bsOut.Write(position[2]);
peerInterface->Send(&bsOut, HIGH_PRIORITY, RELIABLE_ORDERED, 0, server, false);
Debug("sendPacket");
server
void PlayerSync(RakNet::Packet* packet)
{
Player* p = players->FindByNetID(packet->systemAddress);
if (p != NULL)
{
RakNet::BitStream bsIn(packet->data, packet->length, false);
float x, y, z;
bsIn.Read(x);
bsIn.Read(y);
bsIn.Read(z);
printf("MAIN::PlayerSync %f, %f, %f\n", x, y, z);
}
}