ConfigFramework – framework do ułatwiania zarządzania configami

Jest to projekt którego założeniem było ułatwienie pracy i zarządzania configami oraz dodania funkcjonalności której wcześniej nie było w amxxie. Wrzucając framework do projektu dostajemy do dyspozycji dwa nowe forwardy
  • plugin_config
  • plugin_config_loaded
oraz funkcje publiczną do wywołania
  • CFWInitialize( configName[] )
plugin_config – wykonuje się przed plugin_precache więc jest to pierwsza funkcja uruchamiana w pluginie w tym forwardzie rejestrujemy wszystkie cvary. Do funkcji register_cvar został dodany jeden nowy parametr description. Czyli opis cvara. Przykład użycia
register_cvar( "test_cvar" , "1" ,.description = "Testowy cvar" );
Drugi forward plugin_config_loaded jest uruchamiany po załadowaniu wszystkich cvarów jest to funkcja wykonywana przed plugin_precache. W tym forwardzie pobieramy sobie wszystkie dane z cvarów które są nam potrzebne. Funkcje CFWInitialize( configName[] ) uruchamiamy w forwadzie plugin_config np.
CFWInitialize( "testConfig" );
pierwszym parametrem jest nazwa configu do utworzenia. Prywatne metody w frameworku to
  • __CFWregister_cvar
  • __CFWloadConfig
  • __CFWsaveConfig
Należy je tylko wykonywać jeśli dokładnie wie co chce się zrobić Wszelkie pluginy pojawia się w folderze
configs/plugin/nazwaConfiga.cfg
config.zip Download Przykładowy plugin
/* Script generated by Pawn Studio */

#include 
#include 

#include "config"

#define PLUGIN	"testConfig"
#define AUTHOR	"DarkGL"
#define VERSION	"1.0"

new cvarResult;

#pragma unused cvarResult

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
}

public plugin_precache(){
}

public plugin_cfg(){
}

public plugin_config(){
CFWInitialize( "testConfig" );

register_cvar( "test_cvar" , "1" ,.description = "Testowy cvar" );
}

public plugin_config_loaded(){
cvarResult = get_cvar_num( "test_cvar" );

log_amx( "config loaded cvarResult: %d" , cvarResult );
}

2 komentarzy o “ConfigFramework – framework do ułatwiania zarządzania configami

  1. i jak dolacze to to juz nie moge w kodzie zdefiniowac swojego precache’a bo bedzie ze function is already defined

  2. i jak dolacze to to juz nie moge w kodzie zdefiniowac swojego precache’a bo bedzie ze function is already defined // nie , funkcja jest owijana więc nie dojdzie do takiej sytuacji

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.