CSGO загрузка и применение модели к игроку

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Есть ли вариант установки нестандартных моделей для клиента?

Нашел на просторах alliedmods.net такой код:

PHP:
#pragma semicolon 1

#include <sourcemod>
#include <cstrike>
#include <sdkhooks>
#include <sdktools>

public Plugin:myinfo =
{
    name = "Skins/TR CT - Jail",
    author = "SoZika",
    description = "Blehh",
    version = "1.0",
    url = "http://insanitybrasil.info"
};

InitPrecache()
{
    PrecacheModel("models/player/techknow/prison/leet_p.mdl", true);

    AddFileToDownloadsTable("materials/models/player/techknow/prison/leet_p.vmt");
    AddFileToDownloadsTable("materials/models/player/techknow/prison/leet_p.vtf");
    AddFileToDownloadsTable("materials/models/player/techknow/prison/leet_p_n.vtf");
    AddFileToDownloadsTable("models/player/techknow/prison/leet_p.dx80.vtx");
    AddFileToDownloadsTable("models/player/techknow/prison/leet_p.dx90.vtx");
    AddFileToDownloadsTable("models/player/techknow/prison/leet_p.mdl");
    AddFileToDownloadsTable("models/player/techknow/prison/leet_p.phy");
    AddFileToDownloadsTable("models/player/techknow/prison/leet_p.sw.vtx");
    AddFileToDownloadsTable("models/player/techknow/prison/leet_p.vvd");
}

public OnMapStart()
{
    HookEvent("player_spawn", Event_PlayerSpawn, EventHookMode_Pre);
    InitPrecache();
}

public Action:Event_PlayerSpawn(Handle:Event, const String:name[], bool:dontBroadcast)
{
    new client = GetClientOfUserId(GetEventInt(Event, "userid"));
    if( IsClientConnected(client) && IsClientInGame(client) && !IsFakeClient(client)){
        if(GetClientTeam(client) == 2) {
            SetEntityModel(client, "models/player/techknow/prison/leet_p.mdl");
        }
    }
}

Он вполне работает на csgo, однако, модели скачиваются не у всех игроков. Это логично, т.к. в настройках у клиента может стоять "Загрузка только звуков" и др.
У тех, у кого не скачались модели, для тех модель становится полностью прозрачной, остаётся видным только оружие. У остальных работает на ура.

Есть ли вариант применения модели только тому игроку, который загрузил модель, а кто не загрузил, тому установить стандартную модель?
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Нужна реализация.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Пример мною вышесказанного:
PHP:
public OnClientAuthorized(client, const String:auth[]) QueryClientConVar(client, "cl_allowdownload", ConVarQueryFinished:ClientConVar, client);

public ClientConVar(QueryCookie:cookie, client, ConVarQueryResult:result, const String:Name[], const String:Value[])
{
	if (!StrEqual(Value, "all") ...//Если не загрузка всего (all), то установить стандартный скин.
}
Насчёт "all" - это пример, смотри сам значения квара.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Я вот задумался.
Ну сможем мы контролировать квар, а как отобразить игроку, который не скачал модели, стандартную модель, а всем остальным изменённую?

Добавлено через 1 час 19 минут
В общем. Возникла одна проблема, которую я с моими кривыми руками решить не могу.
Модели скачиваются и устанавливаются на ура, однако проблема в том, что модель при установке игроку не видна. Т.е. видно только оружие.
А видны только те модели, которые я, к примеру, скачивал, заходя на другой сервер, и которые, собственно, там работали. Я хз что это такое, кто-нибудь знает? и может, кто знает, как решить проблему?
 
Последнее редактирование:

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Для большего представления прилагаю скрин.

Всего поставил 5 моделей, показываю на примере одной из них.
У кого-то она не отображается, но зато у него может отображаться одна из других.
У кого-то наоборот эта отображается, еще какая-нибудь, и остальные не отображаются.
У кого-то вообще все отображаются.
 

Вложения

  • screen.jpg
    screen.jpg
    18.8 КБ · Просмотры: 31

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Решил провести эксперимент. Удалил все скачанные модели, в итоге загрузились мои, а модели теперь вообще не видно ни 1.
Логично, что я удалил модели, которые были в других папках, и после удаления модель больше не ставится.

Добавлено через 20 часов 37 минут
Может хоть кто-то знает как "правильно" заменять модель игроку?
 
Последнее редактирование:

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Тема всё еще в силе.
При сворачивании и последующем разворачивании игры клиент крашится с ошибкой.

Проблема смены модели игроку всё еще в силе.
Если кто знает, как правильно менять модель, пишите :3
 

Вложения

  • screen.png
    screen.png
    2.4 КБ · Просмотры: 17
Сверху Снизу