Русское сообщество по скриптингу

Отмена precache ресурсов плагина  [Решено]

Все вопросы по работе и настройке AMXX и его плагинов.

Модератор: liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только вопросов по AMX Mod X и его плагинам.

Отмена precache ресурсов плагина

Сообщение ko22009 » 05 мар 2017, 13:49

Возможно ли отключить прекэш ресурсов плагина, не влезая в код самого плагина, путем остановки плагина?
Аватара пользователя
ko22009
 
Сообщения: 131
Зарегистрирован: 19 янв 2017, 16:20
Благодарил (а): 12 раз.
Поблагодарили: 27 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn
C++
Php
Python
C#

Re: Отмена precache ресурсов плагина

Сообщение Leo_[BH] » 05 мар 2017, 22:35

Код: Выделить всё
public plugin_precache()
{
if(
твое условие)
{
pause("d")
return;
}

precache_model(...)
precache_sound(...)
precache_generic(...)
}


Можно, только в самой функции прекеша. То есть после изменения условия (кешировать или нет), нужно сменить карту.
Сохраняйте историю
Аватара пользователя
Leo_[BH]
 
Сообщения: 98
Зарегистрирован: 06 апр 2014, 17:51
Откуда: UA
Благодарил (а): 9 раз.
Поблагодарили: 30 раз.
Опыт программирования: Больше трех лет

Re: Отмена precache ресурсов плагина

Сообщение lop50956 » 05 мар 2017, 22:43

+ плагин должен быть выше
каллфунком мб поиграцо?

Добавлено спустя 3 минуты 52 секунды:
Leo_[BH], у него амхх
Аватара пользователя
lop50956
 
Сообщения: 178
Зарегистрирован: 29 ноя 2016, 00:36
Забанен
Благодарил (а): 18 раз.
Поблагодарили: 16 раз.
Опыт программирования: Больше трех лет
Языки программирования: Php

Re: Отмена precache ресурсов плагина

Сообщение ko22009 » 05 мар 2017, 22:57

Ребята, о чем вы говорите? :ROFL:
Аватара пользователя
ko22009
 
Сообщения: 131
Зарегистрирован: 19 янв 2017, 16:20
Благодарил (а): 12 раз.
Поблагодарили: 27 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn
C++
Php
Python
C#

Re: Отмена precache ресурсов плагина

Сообщение KOTOKU » 05 мар 2017, 22:58

Хукать прекеш и блокировать. Смотри плагин Unprecache
Аватара пользователя
KOTOKU
 
Сообщения: 766
Зарегистрирован: 10 фев 2013, 00:53
Благодарил (а): 10 раз.
Поблагодарили: 117 раз.

Re: Отмена precache ресурсов плагина  [Решено]

Сообщение ko22009 » 05 мар 2017, 23:12

KOTOKU, ну, так блокировка прекэша затронит и другие плагины

О, да, нашел. По сути просто хукаем и блокируем загрузку некоторых ресурсов.

Код: Выделить всё
/*    Formatright © 2010, ConnorMcLeod  

    This plugin is free software;  
    you can redistribute it and/or modify it under the terms of the  
    GNU General Public License as published by the Free Software Foundation.  

    This program is distributed in the hope that it will be useful,  
    but WITHOUT ANY WARRANTY; without even the implied warranty of  
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
    GNU General Public License for more details.  

    You should have received a copy of the GNU General Public License  
    along with this plugin; if not, write to the  
    Free Software Foundation, Inc., 59 Temple Place - Suite 330,  
    Boston, MA 02111-1307, USA.  
*/  

#include <amxmodx>  
#include <cstrike>  
#include <fakemeta>  

#define VERSION "0.1"  

new const g_Sounds[][] =  

    
"blablabla1.mdl",
    
"blablabla2.mdl" 


new const 
g_Models[][] =  

    
"blablabla1.wav"// Ïèõàåì ñþäà ìîäåëè êîòîðûå íå õîòèì ïðýêåøèòü, ìîæíî ðàñøèðÿòü ìàññèâ 
    
"blablabla2.wav" 


public 
plugin_precache()  
{   
    
register_plugin("UnPrecacher"VERSION"Proo.Noob")  
    
register_forward(FM_PrecacheModel"PrecacheModel"
    
register_forward(FM_PrecacheSound"PrecacheSound")      
}  

public 
PrecacheModel(const szModel[])  
{  
    for(new 
0sizeof(g_Models); i++) 
    { 
        if( 
containi(szModelg_Models[i]) != -)  
        {  
            
forward_return(FMV_CELL0)  
            return 
FMRES_SUPERCEDE  
        
}  
    } 
    return 
FMRES_IGNORED  
}  

public 
PrecacheSound(const szSound[])  
{  
    for(new 
0sizeof(g_Sounds); i++) 
    { 
        if( 
containi(szSoundg_Sounds[i]) != -)  
        {  
            
forward_return(FMV_CELL0)  
            return 
FMRES_SUPERCEDE  
        
}  
    } 
    return 
FMRES_IGNORED  

 
Аватара пользователя
ko22009
 
Сообщения: 131
Зарегистрирован: 19 янв 2017, 16:20
Благодарил (а): 12 раз.
Поблагодарили: 27 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn
C++
Php
Python
C#


Вернуться в Вопросы по AMXX и его плагинам

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 11