Bunaaaaa lumeaaaaaa si am decis sa scriu aici cum sa citim dintrun fisier , sau mai clar cum sa dam vIP dintrun fisier :
1. Include librariile :
Code: Select all
#include <amxmodx>
#include <amxmisc>
2. Facem variabile globale:
Code: Select all
new Array:g_Stroke = Invalid_Array;
new bool:is_user_vip[33];
3. Facem plugin_cfg() :
Code: Select all
public plugin_cfg()
{
static File = 0, Buffer[64], Location[256];
g_Stroke = ArrayCreate(64 /* maximum length */);
get_localinfo("amxx_configsdir", Location, charsmax(Location));
add(Location, charsmax(Location), "/vips.ini ");
if (!file_exists(Location))
{
File = fopen(Location, "w+" /* write file */);
if (File)
{
fclose(File);
}
}
File = fopen(Location, "rt" /* read file as text */);
if (File)
{
while (!feof(File))
{
fgets(File, Buffer, charsmax(Buffer));
trim(Buffer);
if (!strlen(Buffer) || Buffer[0] == ';')
{
continue;
}
ArrayPushString(g_Stroke, Buffer);
}
fclose(File);
}
}
4. inauntru la client_authorized punem asa :
Code: Select all
public client_authorized(id)
{
if (!ArraySize(g_Stroke))
{
return PLUGIN_CONTINUE;
}
static Stroke[64], Size = 0;
new name[35]
get_user_authid(id, name, charsmax(name) - 1)
for (Size = 0; Size < ArraySize(g_Stroke); Size++)
{
ArrayGetString(g_Stroke, Size, Stroke, charsmax(Stroke));
if (equal(name, Stroke))
{
is_user_vip[id] = true
return PLUGIN_HANDLED;
}
}
return PLUGIN_CONTINUE;
}
Ps :[/b]
Daca vedeti in client_authorzied acest cod :
Code: Select all
if (equal(name, Stroke))
{
is_user_vip[id] = true
return PLUGIN_HANDLED;
}
Se refera ca "name" e variabila in care am pus STEAM ID jucatorului, si "Stroke" e tot ce contine fisierul vips.ini
is_user_vip e boolean-ul pe care il steam pe true daca e adevarat. si il vom folosi sai dam iteme ..
5. Tot pluginul :
Code: Select all
#include <amxmodx>
#include <amxmisc>
new Array:g_Stroke = Invalid_Array;
new bool:is_user_vip[33];
public plugin_cfg()
{
static File = 0, Buffer[64], Location[256];
g_Stroke = ArrayCreate(64 /* maximum length */);
get_localinfo("amxx_configsdir", Location, charsmax(Location));
add(Location, charsmax(Location), "/vips.ini ");
if (!file_exists(Location))
{
File = fopen(Location, "w+" /* write file */);
if (File)
{
fclose(File);
}
}
File = fopen(Location, "rt" /* read file as text */);
if (File)
{
while (!feof(File))
{
fgets(File, Buffer, charsmax(Buffer));
trim(Buffer);
if (!strlen(Buffer) || Buffer[0] == ';')
{
continue;
}
ArrayPushString(g_Stroke, Buffer);
}
fclose(File);
}
}
public client_authorized(id)
{
if (!ArraySize(g_Stroke))
{
return PLUGIN_CONTINUE;
}
static Stroke[64], Size = 0;
new name[35]
get_user_authid(id, name, charsmax(name) - 1)
for (Size = 0; Size < ArraySize(g_Stroke); Size++)
{
ArrayGetString(g_Stroke, Size, Stroke, charsmax(Stroke));
if (equal(name, Stroke))
{
is_user_vip[id] = true
return PLUGIN_HANDLED;
}
}
return PLUGIN_CONTINUE;
}