Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Извлечение из массива в Expression 2 на C# Garry's Mod

Nikfour Мастер (1111), открыт 3 часа назад
Нужно каким-то образом создать способ возврата значения из массива значения через команду типа string. Пример(пишу от руки по памяти):

@persists Players:array CurPlayer:entity Name:string

Players=players()
print(Players)

#тут, условно, отображаем список игроков из массива Players и получаем, например, такое: array(player John[1]entity) array(player Dan[2] entity) array(player Carl[7] entity)#

#Дальше нужно сделать так, чтобы командой в игровом чате "take" + name() в переменную CurPlayer выводился игрок из массива, чьё имя было написано. Пример: (сообщение в чат: take Carl), после чего должно вывести CurPlayer=Carl
Я пытался так:#

If(owner():lastsaid()=="take"+Players:name())
{CurPlayer=Players[]}

Вот нужно выдернуть в последнюю команду игрока, чей ник был написан в чате. С условием, что при каждом исполнении позиция игрока в массиве и его уникальный ID могут меняться. То есть, нужно как-то ссылаться напрямую на player:name()
Дополнен 3 часа назад
Я понимаю, что явно существует какой-то метод поиска переменной в массиве. Но дело в том, что массив изначально представляет из себя массив переменных типа entity, соответственно напрямую к нему нельзя обратиться через переменную string. В таком случае, для начала нужно вывести из массива все переменные и получить каждый Players[N,entity]:name()
Потом создать массив переменных типа string, инициировать в него все вышеуказанные имена и выполнять поиск по ним. Но как это сделать? Особенно с учётом того, что на каждую сработку может быть разное количество позиций в массиве Players.
0 ответов
Похожие вопросы