Действия с Файлами и Папками
bool:FileExists("путь"); - поиск файла.
Путь указывайте после папки cstrike (не указывая её), например, cfg/server.cfg, sound/xz.mp3 и т.п.
Код
if (FileExists("cfg/server.cfg"))
{
// файл найден
}
else
{
// Нет
}
bool:DirExists("путь"); - поиск папки
bool:DeleteFile("путь"); - удалить файл (вернет true, если удален)
bool:RemoveDir("путь"); - удалить папку
FileSize("путь"); - возвращает размер файла в байтах
Вот так можно получить список файлов в cstrike/cfg:
Код
#include <sourcemod>
public OnPluginStart()
{
new Handle:dir = OpenDirectory("cfg/");
if (dir != INVALID_HANDLE)
{
decl String:Name[100];
new x = 0, FileType:type;
while (ReadDirEntry(dir, Name, 100, type))
{
if (type == FileType_File) PrintToServer("%d. %s", ++x, Name);
}
CloseHandle(dir);
}
else PrintToServer("Не удалось открыть директорию");
}
FileType_Unknown - неизвестный тип файла
FileType_Directory - папка
FileType_File - файл
bool:RenameFile(const String:newpath[], const String:oldpath[]);
Перемещает файл "oldpath" в "newpath" - можно даже изменить ему имя. Вернёт true, в случае успеха.
Пример:
Код
// Переместит OldName.txt в папку cstrike/ с новым именем "NewName.txt"
RenameFile("NewName.txt", "cfg/OldName.txt");