KinD | Дата: Пятница, 22.02.2013, 22:07 | Сообщение # 1 |
- Сообщения: 1148
- Награды: 22
- Замечания:
|
Функционал: 1)Автоудаление 2)Добавление через ini файл Код #include <amxmodx> new VIPCount; new Array:Player_info; // Ник new Array:Data; //Дата #define VIP_FILE "addons/amxmodx/configs/vip_users.ini" new is_user_vip_player[33]; new data_add_vip[14];
public plugin_init() { register_plugin("Vipsystem", "1.0", "daywer") set_task(0.1,"Load") register_clcmd("you_vip","vip_func") get_time("%Y.%m.%d", data_add_vip, charsmax(data_add_vip)) }
public vip_func(id) { if(is_user_vip_player[id]) { new msg[250] formatex(msg,charsmax(msg),"%s",data_add_vip) client_print(id,print_chat,msg) } }
public plugin_precache() { Player_info = ArrayCreate(64, 1); Data = ArrayCreate(64, 1); }
public client_connect( id ) { new name[64]; new DT[14] get_user_name(id,name,63) is_user_vip_player [id]= 0 for (new i = 0; i < VIPCount; i++) { new Name[64]; ArrayGetString(Player_info,i, Name, charsmax(Name)); if(equali(Name,name)) { ArrayGetString(Data,i, DT, charsmax(DT)); if(equali(DT,data_add_vip)) { set_task(15.0,"remove_vip_player",id) } else if(!(equali(DT,data_add_vip))) { is_user_vip_player [id]= 1 }
} } }
public remove_vip_player(id) { new Name[64] get_user_name(id,Name,63) new Line = 0 new File=fopen(VIP_FILE,"r"); if (File) { new Text[512]; new AuthData[64]; new Player_add[40] while (!feof(File)) { fgets(File,Text,sizeof(Text)-1); trim(Text); if (Text[0]==';') { Line++ continue; } parse(Text,AuthData,sizeof(AuthData)-1,Player_add,charsmax(Player_add)) if(equali(Name,AuthData)) { new msg[250] formatex(msg,charsmax(msg),";VIP права у %s удалены из-за окончанию срока VIP",Name) write_file(VIP_FILE,msg,Line) server_print("[SYSTEM]Line is %d",Line+1); Load() } Line++ } } }
public Load() { new File=fopen(VIP_FILE,"r"); VIPCount = 0 if (File) { new Text[512]; new AuthData[44]; new Player_add[40] while (!feof(File)) { fgets(File,Text,sizeof(Text)-1); trim(Text); if (Text[0]==';') { continue; } AuthData[0]=0; parse(Text,AuthData,sizeof(AuthData)-1,Player_add,charsmax(Player_add)) ArrayPushString(Player_info, AuthData); ArrayPushString(Data, Player_add);
VIPCount++; } server_print("[SYSTEM]Vip player %d",VIPCount); fclose(File); } }
Skype:daywerok
Сообщение отредактировал KinD - Пятница, 22.02.2013, 22:07 |
|
| |
Contra63 | Дата: Воскресенье, 24.02.2013, 01:00 | Сообщение # 2 |
- Сообщения: 830
- Награды: 7
- Замечания:
|
KinD, спасибо за код. Возьму в свой VIP Private 0.9b
|
|
| |
KinD | Дата: Воскресенье, 24.02.2013, 01:48 | Сообщение # 3 |
- Сообщения: 1148
- Награды: 22
- Замечания:
|
Пример формы добавления "Hell Machine" "2013.03.23" 1 - ник 2 - дата окончания.
Skype:daywerok
|
|
| |