←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Edycja Pluginu
knife_mod modyfikacja z noza na m4a1


Best Answer _McHappy 17.11.2016 17:24

#include <amxmodx>
#include <engine>
#include <vault>
#include <fun>
#define PLUGIN "M4A1 Mod"
#define VERSION "1.0"
#define AUTHOR "spunko"
new M4A1_model[33]
new g_Menu
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_event("CurWeapon","CurWeapon","be","1=1")
	g_Menu = register_menuid("M4A1 Mod")
	register_menucmd(g_Menu, 1023, "M4A1menu")
	register_clcmd("say /M4A1", "display_M4A1")
        register_clcmd("say /m4", "display_M4A1")
	set_task(480.0, "kmodmsg", 0, _, _, "b")
}
public plugin_precache() { //tu zmieniasz sciezki
	precache_model("models/M4A1-mod/v_butcherz.mdl")
	precache_model("models/M4A1-mod/p_butcher.mdl")
	precache_model("models/M4A1-mod/v_machete.mdl")
	precache_model("models/M4A1-mod/p_machete.mdl")
	precache_model("models/M4A1-mod/v_bak.mdl")
	precache_model("models/M4A1-mod/p_bak.mdl")
	precache_model("models/M4A1-mod/v_pocket.mdl")
	precache_model("models/M4A1-mod/p_pocket.mdl")
	precache_model("models/v_m4a1.mdl")
	precache_model("models/p_m4a1.mdl")
}
public display_M4A1(id) {//tu zmieniasz tekst w menu
	new menuBody[512]
	add(menuBody, 511, "\rM4A1 Mod\w^n^n")
	add(menuBody, 511, "1. Machete \y(More Damage/Low Speed)\w^n")
	add(menuBody, 511, "2. Bak M4A1 \y(No Footsteps)\w^n")
	add(menuBody, 511, "3. Pocket M4A1 \y(High Speed)\w^n")
	add(menuBody, 511, "4. Butcher M4A1 \y(Low Gravity)\w^n")
	add(menuBody, 511, "5. Default M4A1 \y(Health Regeneration)\w^n^n")
	add(menuBody, 511, "0. Exit^n")
	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 )
	show_menu(id, keys, menuBody, -1, "M4A1 Mod")
}
public M4A1menu(id, key) {
	switch(key)
	{
		case 0: SetM4A1(id , 4)
		case 1: SetM4A1(id , 2)
		case 2: SetM4A1(id , 3)
		case 3: SetM4A1(id , 1)
		case 4: SetM4A1(id , 0)
		default: return PLUGIN_HANDLED
	}
	SaveData(id)
	return PLUGIN_HANDLED
}
public SetM4A1(id , M4A1) {
	M4A1_model[id] = M4A1
	new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)
	
	if ( Weapon != CSW_M4A1 )
		return PLUGIN_HANDLED
		
	new vModel[56],pModel[56]
	switch(M4A1)
	{
		case 0: {//tu zmieniasz sciezki
			format(vModel,55,"models/v_m4a1.mdl")
			format(pModel,55,"models/p_m4a1.mdl")
		}
		case 1: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_butcher.mdl")
			format(pModel,55,"models/M4A1-mod/p_butcher.mdl")
		}
		case 2: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_bak.mdl")
			format(pModel,55,"models/M4A1-mod/p_bak.mdl")
		}
		case 3: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_pocket.mdl")
			format(pModel,55,"models/M4A1-mod/p_pocket.mdl")
		}
		case 4: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_machete.mdl")
			format(pModel,55,"models/M4A1-mod/p_machete.mdl")
		}
	}
	entity_set_string(id, EV_SZ_viewmodel, vModel)
	entity_set_string(id, EV_SZ_weaponmodel, pModel)
	return PLUGIN_HANDLED;
}
public CurWeapon(id){
	SetM4A1(id, M4A1_model[id])     
}
public kmodmsg() {
	client_print(0,print_chat,"[AMXX] Type /M4A1 to change your M4A1 skins")
}
public client_authorized(id){
	LoadData(id)
}
stock SaveData(id)
{
	new authid[32]
	get_user_authid(id, authid, 31)
	new vaultkey[64]
	new vaultdata[64]
	format(vaultkey, 63, "KMOD_%s", authid)
	format(vaultdata, 63, "%d", M4A1_model[id])
	set_vaultdata(vaultkey, vaultdata)
}
stock LoadData(id)
{
	new authid[32]
	get_user_authid(id,authid,31)
	new vaultkey[64], vaultdata[64]
	format(vaultkey, 63, "KMOD_%s", authid)
	get_vaultdata(vaultkey, vaultdata, 63)
	M4A1_model[id] = str_to_num(vaultdata)
} 

Czytaj komentarze w kodzie.

Go to the full post

  • +
  • -
Magiczny `'s Photo Magiczny ` 17.11.2016

Witam, tak jak w temcie. proszę o edycje pluginu knife_mod aby zamiast menu z wyborem noży było menu z wyborem m4a1.

Kod .sma z edycji DarkGL - usunięte moce dla noży. Oczywiście za chęć pomocy +.

Spoiler

Quote

  • +
  • -
Best Answer _McHappy's Photo _McHappy 17.11.2016

#include <amxmodx>
#include <engine>
#include <vault>
#include <fun>
#define PLUGIN "M4A1 Mod"
#define VERSION "1.0"
#define AUTHOR "spunko"
new M4A1_model[33]
new g_Menu
public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_event("CurWeapon","CurWeapon","be","1=1")
	g_Menu = register_menuid("M4A1 Mod")
	register_menucmd(g_Menu, 1023, "M4A1menu")
	register_clcmd("say /M4A1", "display_M4A1")
        register_clcmd("say /m4", "display_M4A1")
	set_task(480.0, "kmodmsg", 0, _, _, "b")
}
public plugin_precache() { //tu zmieniasz sciezki
	precache_model("models/M4A1-mod/v_butcherz.mdl")
	precache_model("models/M4A1-mod/p_butcher.mdl")
	precache_model("models/M4A1-mod/v_machete.mdl")
	precache_model("models/M4A1-mod/p_machete.mdl")
	precache_model("models/M4A1-mod/v_bak.mdl")
	precache_model("models/M4A1-mod/p_bak.mdl")
	precache_model("models/M4A1-mod/v_pocket.mdl")
	precache_model("models/M4A1-mod/p_pocket.mdl")
	precache_model("models/v_m4a1.mdl")
	precache_model("models/p_m4a1.mdl")
}
public display_M4A1(id) {//tu zmieniasz tekst w menu
	new menuBody[512]
	add(menuBody, 511, "\rM4A1 Mod\w^n^n")
	add(menuBody, 511, "1. Machete \y(More Damage/Low Speed)\w^n")
	add(menuBody, 511, "2. Bak M4A1 \y(No Footsteps)\w^n")
	add(menuBody, 511, "3. Pocket M4A1 \y(High Speed)\w^n")
	add(menuBody, 511, "4. Butcher M4A1 \y(Low Gravity)\w^n")
	add(menuBody, 511, "5. Default M4A1 \y(Health Regeneration)\w^n^n")
	add(menuBody, 511, "0. Exit^n")
	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 )
	show_menu(id, keys, menuBody, -1, "M4A1 Mod")
}
public M4A1menu(id, key) {
	switch(key)
	{
		case 0: SetM4A1(id , 4)
		case 1: SetM4A1(id , 2)
		case 2: SetM4A1(id , 3)
		case 3: SetM4A1(id , 1)
		case 4: SetM4A1(id , 0)
		default: return PLUGIN_HANDLED
	}
	SaveData(id)
	return PLUGIN_HANDLED
}
public SetM4A1(id , M4A1) {
	M4A1_model[id] = M4A1
	new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)
	
	if ( Weapon != CSW_M4A1 )
		return PLUGIN_HANDLED
		
	new vModel[56],pModel[56]
	switch(M4A1)
	{
		case 0: {//tu zmieniasz sciezki
			format(vModel,55,"models/v_m4a1.mdl")
			format(pModel,55,"models/p_m4a1.mdl")
		}
		case 1: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_butcher.mdl")
			format(pModel,55,"models/M4A1-mod/p_butcher.mdl")
		}
		case 2: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_bak.mdl")
			format(pModel,55,"models/M4A1-mod/p_bak.mdl")
		}
		case 3: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_pocket.mdl")
			format(pModel,55,"models/M4A1-mod/p_pocket.mdl")
		}
		case 4: {//tu zmieniasz sciezki
			format(vModel,55,"models/M4A1-mod/v_machete.mdl")
			format(pModel,55,"models/M4A1-mod/p_machete.mdl")
		}
	}
	entity_set_string(id, EV_SZ_viewmodel, vModel)
	entity_set_string(id, EV_SZ_weaponmodel, pModel)
	return PLUGIN_HANDLED;
}
public CurWeapon(id){
	SetM4A1(id, M4A1_model[id])     
}
public kmodmsg() {
	client_print(0,print_chat,"[AMXX] Type /M4A1 to change your M4A1 skins")
}
public client_authorized(id){
	LoadData(id)
}
stock SaveData(id)
{
	new authid[32]
	get_user_authid(id, authid, 31)
	new vaultkey[64]
	new vaultdata[64]
	format(vaultkey, 63, "KMOD_%s", authid)
	format(vaultdata, 63, "%d", M4A1_model[id])
	set_vaultdata(vaultkey, vaultdata)
}
stock LoadData(id)
{
	new authid[32]
	get_user_authid(id,authid,31)
	new vaultkey[64], vaultdata[64]
	format(vaultkey, 63, "KMOD_%s", authid)
	get_vaultdata(vaultkey, vaultdata, 63)
	M4A1_model[id] = str_to_num(vaultdata)
} 

Czytaj komentarze w kodzie.


Edited by _McHappy, 17.11.2016 17:25.
Quote

  • +
  • -
Magiczny `'s Photo Magiczny ` 17.11.2016

Działa, dzięki :)

Quote