-- Скрипт для поиска всех viewmodel на карте
-- Автор: AI Assistant
-- Использование: введите в консоли "find_viewmodels"
local function FindViewModels()
-- Ищем все сущности с классом "viewmodel"
local viewmodels = ents.FindByClass("viewmodel")
-- Также ищем weapon_ (оружие может иметь свои viewmodel)
local weapons = ents.FindByClass("weapon_*")
print("========================================")
print(" НАЙДЕННЫЕ VIEWMODELS")
print("========================================")
print("Всего найдено viewmodels: " .. #viewmodels)
print("Всего найдено weapons: " .. #weapons)
print("========================================")
if #viewmodels == 0 and #weapons == 0 then
print("ViewModels не найдены!")
return
end
-- Выводим информацию о каждом viewmodel
print("\n--- VIEWMODELS ---")
for i, vm in ipairs(viewmodels) do
local entIndex = vm:EntIndex()
local parent = vm:GetParent()
local parentIndex = IsValid(parent) and parent:EntIndex() or "NONE"
local parentClass = IsValid(parent) and parent:GetClass() or "NONE"
local model = vm:GetModel() or "UNKNOWN"
print(string.format("[%d] ViewModel #%d", i, entIndex))
print(string.format(" Модель: %s", model))
print(string.format(" Родитель (ID): %s", parentIndex))
print(string.format(" Родитель (класс): %s", parentClass))
print("")
end
-- Выводим информацию об оружии
print("\n--- WEAPONS ---")
for i, wep in ipairs(weapons) do
local entIndex = wep:EntIndex()
local owner = wep:GetOwner()
local ownerIndex = IsValid(owner) and owner:EntIndex() or "NONE"
local ownerClass = IsValid(owner) and owner:GetClass() or "NONE"
local model = wep:GetModel() or "UNKNOWN"
print(string.format("[%d] Weapon #%d", i, entIndex))
print(string.format(" Модель: %s"))
print(string.format(" Владелец (ID): %s", ownerIndex))
print(string.format(" Владелец (класс): %s", ownerClass))
print("")
end
print("========================================")
print(" ПОИСК ЗАВЕРШЕН")
print("========================================")
end
-- Регистрируем консольную команду
concommand.Add("find_viewmodels", FindViewModels)
-- Также делаем автозапуск при старте игры (опционально)
hook.Add("InitPostEntity", "FindViewModelsOnStart", function()
print("[ViewModel Finder] Скрипт загружен!")
print("[ViewModel Finder] Используйте команду: find_viewmodels")
end)
print("[ViewModel Finder] Скрипт успешно загружен!")
print("[ViewModel Finder] Введите 'find_viewmodels' в консоль для поиска")