Pomyslalem Jeszcze Nad Takim Rozwiazaniem

?
precache_files(szFilename[],type) {
new szText[256], szKey[64], szValue[64]
new a, pos = 0
new ent
if (file_exists(szFilename)) {
//server_cmd("echo [AMX] Start precaching from file '%s'",szFilename)
while (read_file(szFilename,pos++,szText,sizeof(szText),a)) {
if ( szText[0] == ';' )
continue
if ( szText[0] == '/' && szText[1] == '/' )
continue
if (equal(szText,""))
continue
if (parse(szText, szKey, sizeof(szKey), szValue, sizeof(szValue)) >= 1) {
if (type == 0) {
if (equali(szKey,"precache_sound")) {
precache_sound(szValue)
server_cmd("echo [AMX] Sound '%s' precached",szValue)
} else if (equali(szKey,"precache_model")) {
precache_model(szValue)
server_cmd("echo [AMX] Model '%s' precached",szValue)
} else if (equali(szKey,"precache_generic")) {
precache_generic(szValue)
server_cmd("echo [AMX] Generic '%s' precached",szValue)
} else if (equali(szKey,"load_file")) {
precache_files(szValue,type)
}
} else {
if (equali(szKey,"precache_class")) {
ent = CreateEntity(szValue)
if (ent) {
DispatchSpawn(ent)
RemoveEntity(ent)
server_cmd("echo [AMX] Class '%s' precached",szValue)
} else {
server_cmd("echo [AMX] Error in precaching class %s",szValue)
}
} else if (equali(szKey,"load_file")) {
precache_files(szValue,type)
}
}
}
}
}
}
public plugin_precache() {
new map[64]
get_mapname(map,sizeof(map))
new t1[128],t2[128]
#if defined _amxmodx_included
format(t1,sizeof(t1),"addons/amxx/precache/default.pre")
format(t2,sizeof(t2),"addons/amxx/precache/%s.pre",map)
#else
format(t1,sizeof(t1),"addons/amx/precache/default.pre")
format(t2,sizeof(t2),"addons/amx/precache/%s.pre",map)
#endif
precache_files(t1,0)
precache_files(t2,0)
return PLUGIN_CONTINUE
}
public plugin_init() {
register_plugin(Title,Version,Author)
new map[64]
get_mapname(map,sizeof(map))
new t1[128],t2[128]
#if defined _amxmodx_included
format(t1,sizeof(t1),"addons/amxx/precache/default.pre")
format(t2,sizeof(t2),"addons/amxx/precache/%s.pre",map)
#else
format(t1,sizeof(t1),"addons/amx/precache/default.pre")
format(t2,sizeof(t2),"addons/amx/precache/%s.pre",map)
#endif
precache_files(t1,1)
precache_files(t2,1)
return PLUGIN_CONTINUE
}
Użytkownik GwynBleidD edytował ten post 04.12.2014 10:43