Beware! VIP
Брой мнения : 661 Дата на регистрация : 18.03.2016 Години : 27 Местожителство : България
| Заглавие: ZP plugin free ammo packs с команда! Съб 28 Яну 2017, 20:35 | |
| Описание: Това е плъгин за играта CS 1.6 , и по-точно за Zombie Plague. С командата /free получавате ЕДНОКРАТНО зададени oт Cvar аммо пакс. +На определено време (зададено от Cvar пак) можете отново да взимате безплатно аммо. В момента е настроено да ти дава 1500 , а може да бъде променено от кода даден по-долу ! - Цитат :
- Cvars:
free_ammo_save_type "1" ; // как да се запазват безплатните амота 1 по authid, 2 по ИП или 3 по НИК free_ammo_packs "1500" ; // Колко амо да дава ! free_ammo_minutes "600" ; //Време в минути, 2800минути=48часа
Допълнително инфо: Слагате този код в .SMA файл от папката ви Scripting и компилирате ЛОКАЛНО ! Изисква модули: - Цитат :
- #include <amxmodx>
#include <zombieplague>
#include <nvault>
Доп.инфо: - Код:
-
#define TAG "[ZP]" от кода променяте този префикс с какъвто вие искате ================================================== .SMA - Код:
-
#include <amxmodx>
#include <zombieplague>
#include <nvault>
#define NV_NAME "FREE_AMMO"
#define TAG "[ZP]"
enum player_struct {
mtime,bool:ftime,key[64] }
new g_player[33][player_struct];
new cvar_save_type,cvar_time,cvar_ap;
public plugin_init() {
register_plugin("Free Ammo Packs", "1.0", "|RrebEliii|"); cvar_save_type = register_cvar("free_ammo_save_type","1"); // how to save data 1 by authid, 2 by ip or 3 by name cvar_time = register_cvar("free_ammo_minutes","600"); // Time In Minute, 2800minutes=48hours it will be auto calculated cvar_ap = register_cvar("free_ammo_packs","1500"); // How Much Ammo To Grive register_clcmd("say /free", "cmd_ap"); register_clcmd("say_team /free", "cmd_ap"); } public cmd_ap(id) {
new nv = nvault_open(NV_NAME); if(nv == INVALID_HANDLE) { client_print(id,print_chat,"%s For the moment getting ammo packs system is inactive..",TAG); return; } new txt_min[32],txt_ap[10]; new ap = get_pcvar_num(cvar_ap),pminutes = get_pcvar_num(cvar_time); copy(txt_ap,charsmax(txt_ap),(ap==1)?"pack":"packs"); build_time(pminutes,txt_min,charsmax(txt_min)); if(g_player[id][ftime]) { client_print(id,print_chat,"%s You have just received %d ammo %s, get another in %s !",TAG,ap,txt_ap,txt_min); zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + ap); g_player[id][ftime]=false; nvault_touch(nv,g_player[id][key],g_player[id][mtime]=get_systime()); return; } new user_time=get_systime()-g_player[id][mtime]; new diff_min=(user_time<(pminutes*60))?pminutes-(user_time/60):pminutes; build_time(diff_min,txt_min,charsmax(txt_min)); if(user_time>=(pminutes*60)) { client_print(id,print_chat,"%s You have just received %d ammo %s since %s passed !",TAG,ap,txt_ap,txt_min); zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + ap); nvault_touch(nv,g_player[id][key],g_player[id][mtime]=get_systime()); } else client_print(id,print_chat,"%s Retry again in %s for getting %d more ammo %s !",TAG,txt_min,ap,txt_ap); nvault_close(nv); }
public client_putinserver(id) { new nv,data[32]; get_auth(id,g_player[id][key],charsmax(g_player[][key])); g_player[id][mtime]=get_systime(); g_player[id][ftime]=false; formatex(data,charsmax(data),"%d",g_player[id][mtime]); if((nv=nvault_open(NV_NAME))==INVALID_HANDLE) return; if(!nvault_lookup(nv,g_player[id][key],data,charsmax(data),g_player[id][mtime])) { nvault_set(nv,g_player[id][key],data); g_player[id][ftime]=true; } nvault_close(nv); }
public client_disconnect(id) { g_player[id][mtime]=0; g_player[id][ftime]=false; }
stock get_auth(id,data[],len)
switch(get_pcvar_num(cvar_save_type)) { case 1: get_user_authid(id,data,len); case 2: get_user_ip(id,data,len,1); case 3: get_user_name(id,data,len); }
stock build_time(pminutes,data[],len)
if(pminutes==1) copy(data,len,"1 minute"); else if(pminutes!=1&&pminutes<60) formatex(data,len,"%d minutes",pminutes); else if(pminutes==60) copy(data,len,"1 hour"); else { new ptime=pminutes/60; if(ptime*60==pminutes) formatex(data,len,"%d %s",ptime,(ptime==1)?"hour":"hours"); else { new diff=pminutes-ptime*60; formatex(data,len,"%d %s and %d %s",ptime,(ptime==1)?"hour":"hours",diff,(diff==1)?"minute":"minutes"); } } |
|