[SourcePawn] Динамический многомерный массив.

Артист

Участник
Сообщения
1
Реакции
0
Нужен массив такого плана:

[2][?][3]

Записать координаты точек спавна кт и тт.

Не пойму как изменять размер.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,924
  • Команда форума
  • #2
Такое сделать никак. Воспользуйтесь ArrayList. В него можно писать массивы.
PHP:
ArrayList g_hSpawnPoints[2];

public void OnPluginStart() {
  for (int i; i < 2; ++i)
    g_hSpawnPoints[i] = new ArrayList(ByteCountToCells(24));
}

public void WriteSpawnPoints(int iTeamId, float[3] vecPoint) {
  if ((iTeamId = GetTeamId(iTeamId)) == -1)
    return;

  g_hSpawnPoints[iTeamId].PushArray(vecPoint, 3);
}

public bool ReadSpawnPoints(int iTeamId, int iPointId, float[3] vecPoint) {
  if ((iTeamId = GetTeamId(iTeamId)) == -1)
    return false;
  if (iPointId >= g_hSpawnPoints[iTeamId].Length)
    return false;

  g_hSpawnPoints[iTeamId].GetArray(iPointId, vecPoint, 3);
  return true;
}
 
Сверху Снизу