Raised This Month: $32 Target: $400
 8% 

[ZP43|ZP50] Auto-save Ammopacks.


Post New Thread Reply   
 
Thread Tools Display Modes
Dr Zayd
Senior Member
Join Date: Jun 2014
Location: forums.alliedmods.net
Old 06-09-2015 , 09:44   Re: [ZP43|ZP50] Auto-save Ammopacks.
Reply With Quote #141

Tyyyyy
__________________
Invisible System | 100%
ـــــــــــــــــــــــــــــ
Anti setinfo check | Ez Plugin and lite
ـــــــــــــــــــــــــــــ
[ZP] Free VIP Menu | Free VIP menu | ZP-Mod |
Dr Zayd is offline
ArminC
Senior Member
Join Date: Apr 2016
Old 04-19-2016 , 14:06   Re: [ZP43|ZP50] Auto-save Ammopacks.
Reply With Quote #142

Code:
#include <amxmodx>
#include <nvault>

//Uncomment 'IM_USING_ZP50' if your server is running ZP50 and above.
//#define IM_USING_ZP50
#if defined IM_USING_ZP50
native zp_ammopacks_get(id)
native zp_ammopacks_set(id, amount)
#else
native zp_get_user_ammo_packs(id)
native zp_set_user_ammo_packs(id, amount)
#endif

//Your vault name
#define VAULT_NAME "zp_ap_store"

//Max player's ammopack that can be save in vault.
#define MAX_AMMOPACK 999999

//Max day player's ammopack can be stay in vault, set 0 = permanent.
#define DAY_PRUNE 60
new hVaultHandle, bool:bIsLoaded[33], szName[33][35]

public plugin_init()
{
	register_plugin("[ZPNM] AP Store", "0.0.1", "wbyokomo")
}

public plugin_cfg()
{
	hVaultHandle = nvault_open(VAULT_NAME)
	if(hVaultHandle == INVALID_HANDLE)
	{
		new szText[128]
		formatex(szText, 127, "Error opening '%s' nVault.", VAULT_NAME)
		set_fail_state(szText)
	}
	
	new day = DAY_PRUNE
	if(day > 0) nvault_prune(hVaultHandle, 0, get_systime() - (DAY_PRUNE * 86400));
}

public plugin_end()
{
	nvault_close(hVaultHandle)
}

public client_putinserver(id)
{
	if(is_user_hltv(id)) return;
	if(is_user_bot(id)) return;
	
	get_user_name(id, szName[id], 34)
	LoadData(id)
}

public client_disconnect(id)
{
	SaveData(id)
	bIsLoaded[id] = false
}

LoadData(id)
{
	new szKey[40]
	formatex(szKey, 39, "%sZPAP", szName[id])
	new iAmmo = nvault_get(hVaultHandle, szKey)
	#if defined IM_USING_ZP50
	zp_ammopacks_set(id, iAmmo)
	#else
	zp_set_user_ammo_packs(id, iAmmo)
	#endif
	bIsLoaded[id] = true
}

SaveData(id)
{
	if(!bIsLoaded[id]) return;
	
	#if defined IM_USING_ZP50
	new ap = zp_ammopacks_get(id)
	#else
	new ap = zp_get_user_ammo_packs(id)
	#endif
	if(ap > MAX_AMMOPACK) ap = MAX_AMMOPACK;
	new szAmmo[12], szKey[40]
	formatex(szKey, 39, "%sZPAP", szName[id])
	formatex(szAmmo, 11, "%d", ap)
	nvault_set(hVaultHandle, szKey, szAmmo)
}
A name-save version..

Last edited by ArminC; 04-21-2016 at 08:45.
ArminC is offline
Amine Belokda
Senior Member
Join Date: Oct 2015
Location: ML_NOT_FOUND
Old 06-19-2016 , 01:49   Re: [ZP43|ZP50] Auto-save Ammopacks.
Reply With Quote #143

nice
__________________
Amine Belokda is offline
Send a message via MSN to Amine Belokda
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 23:26.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode