Заказать игровой сервер Контакты (заказать плагин/исправить ошибки/другое) Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » CreateDataTimer
CreateDataTimer
tonline_kms65 Дата: Четверг, 16.06.2016, 11:48:37 | Сообщение # 1
Сообщений: 215
Репутация: 3 [ +/- ]
Вот такой вопрос.

Создана энтитя, назовем её 1. К ней припарентена куча других энтитек (детишек). Энтитя 1 является, как бы, родителем для остальной кучки энтитек (детишек).
Пакуем энтитьку 1 в dataPack.
Вот теперь сама суть вопроса:

WritePackCell(dataPack, 1);

сюда пакуется только энтитька 1 ?
или же запаковывается энтитька 1 + кучка припарентенных к ней энтитек (детишек)?

Пытался объяснить суть вопроса как можно более понятно.


Сообщение отредактировал tonline_kms65 - Четверг, 16.06.2016, 11:52:14
 
BarD Дата: Четверг, 16.06.2016, 11:58:39 | Сообщение # 2
Сообщений: 943
Репутация: 137 [ +/- ]
Одна. Индекс один - энтити одно.
 
tonline_kms65 Дата: Четверг, 16.06.2016, 12:03:02 | Сообщение # 3
Сообщений: 215
Репутация: 3 [ +/- ]
Цитата BarD ()
Одна. Индекс один - энтити одно.


Ты хочешь сказать, что нужно паковать каждого из детишек? Не может быть такого.

Странно тогда.
Почему у меня, после распаковки, начинает перебирать всех детишек?
Или я распаковываю как то с ошибкой?

int client = GetClientOfUserId(ReadPackCell(dataPack)); клиента получил.
int ent = ReadPackCell(dataPack); энтитьку 1 получил. Фака, а может быть надо было вот так сделать

int ent[client] = ReadPackCell(dataPack);


Сообщение отредактировал tonline_kms65 - Четверг, 16.06.2016, 12:47:54
 
BarD Дата: Четверг, 16.06.2016, 15:10:52 | Сообщение # 4
Сообщений: 943
Репутация: 137 [ +/- ]
Не вижу всего кода, чтобы помочь.
Цитата tonline_kms65 ()
int client = GetClientOfUserId(ReadPackCell(dataPack)); клиента получил.
int ent = ReadPackCell(dataPack); энтитьку 1 получил.

Не знаю, что ты запаковывал и как.
 
Scarface_slv Дата: Четверг, 16.06.2016, 17:39:46 | Сообщение # 5
Сообщений: 737
Репутация: 61 [ +/- ]
http://world-source.ru/forum/102-4538-1. Только последовательно добавляешь/получаешь - строку, число. Массивы он не хранит.
 
TEIN Дата: Четверг, 16.06.2016, 17:43:47 | Сообщение # 6
Сообщений: 563
Репутация: 78 [ +/- ]
Цитата Scarface_slv ()
http://world-source.ru/forum/102-4538-1

http://world-source.ru/forum/100-2277-1 и http://world-source.ru/forum/100-2278-1
 
Scarface_slv Дата: Четверг, 16.06.2016, 18:21:17 | Сообщение # 7
Сообщений: 737
Репутация: 61 [ +/- ]
TEIN, Ой, хотел это скинуть http://world-source.ru/forum/100-2278-1.
 
«SeReGa»☆ Дата: Четверг, 16.06.2016, 18:47:17 | Сообщение # 8
Сообщений: 395
Репутация: 37 [ +/- ]
Цитата _wS_ ()
Извлекать данные нужно в том же порядке, в каком они были записаны.


для этого есть также

Цитата _wS_ ()
ResetPack(Handle:pack, bool:clear=false);
Сбрасывает позицию. Это нужно сделать 1 раз перед первым извлечением данных.
Если clear = true, то все данные будут уничтожены (пак станет пустым).

GetPackPosition(Handle:pack); - Получает позицию чтения / записи в пакете данных.
SetPackPosition(Handle:pack, position); - Устанавливает позицию.


Сообщение отредактировал «SeReGa»☆ - Четверг, 16.06.2016, 18:51:47
 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » CreateDataTimer
  • Страница 1 из 1
  • 1
Поиск: