←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

[PYTANIE] Menu noży


Najlepsza odpowiedź VertuS 19.06.2016 18:17

#include 

#include

#include

#include

#include



#pragma semicolon 0



#define PLUGIN "Knife Mod"

#define VERSION "1.0"

#define AUTHOR "spunko"



new knife_model[33]

new g_Menu



public plugin_init() {



register_plugin(PLUGIN, VERSION, AUTHOR)



register_event("CurWeapon","CurWeapon","be","1=1")



g_Menu = register_menuid("Knife Mod")

register_menucmd(g_Menu, 1023, "knifemenu")



register_clcmd("say /knife", "display_knife")



set_task(480.0, "kmodmsg", 0, _, _, "b")

}



public plugin_precache() {

precache_model("models/knife-mod/v_butcher.mdl")

precache_model("models/knife-mod/p_butcher.mdl")

precache_model("models/knife-mod/v_machete.mdl")

precache_model("models/knife-mod/p_machete.mdl")

precache_model("models/knife-mod/v_bak.mdl")

precache_model("models/knife-mod/p_bak.mdl")

precache_model("models/knife-mod/v_pocket.mdl")

precache_model("models/knife-mod/p_pocket.mdl")

precache_model("models/v_knife.mdl")

precache_model("models/p_knife.mdl")

}



public display_knife(id) {

new menuBody[512]

add(menuBody, 511, "\rKnife Mod\w^n^n")

add(menuBody, 511, "1. Machete \y(More Damage/Low Speed)\w^n")

add(menuBody, 511, "2. Bak Knife \y(No Footsteps)\w^n")

add(menuBody, 511, "3. Pocket Knife \y(High Speed)\w^n")

add(menuBody, 511, "4. Butcher Knife \y(Low Gravity)\w^n")

add(menuBody, 511, "5. Default Knife \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, "Knife Mod")

}



public knifemenu(id, key) {

switch(key)

{

case 0: SetKnife(id , 4)

case 1: SetKnife(id , 2)

case 2: SetKnife(id , 3)

case 3: SetKnife(id , 1)

case 4: SetKnife(id , 0)

default: return PLUGIN_HANDLED

}

SaveData(id)

return PLUGIN_HANDLED

}



public SetKnife(id , Knife) {

knife_model[id] = Knife



new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)

if ( Weapon != CSW_KNIFE )

return PLUGIN_HANDLED



new vModel[56],pModel[56]



switch(Knife)

{

case 0: {

format(vModel,55,"models/v_knife.mdl")

format(pModel,55,"models/p_knife.mdl")

}

case 1: {

format(vModel,55,"models/knife-mod/v_butcher.mdl")

format(pModel,55,"models/knife-mod/p_butcher.mdl")

}

case 2: {

format(vModel,55,"models/knife-mod/v_bak.mdl")

format(pModel,55,"models/knife-mod/p_bak.mdl")

}

case 3: {

format(vModel,55,"models/knife-mod/v_pocket.mdl")

format(pModel,55,"models/knife-mod/p_pocket.mdl")

}

case 4: {

format(vModel,55,"models/knife-mod/v_machete.mdl")

format(pModel,55,"models/knife-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){

SetKnife(id, knife_model[id])

}





public kmodmsg() {



client_print(0,print_chat,"[AMXX] Type /knife to change your knife skins")

}



public client_authorized(id){

LoadData(id)

}



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", knife_model[id])

set_vaultdata(vaultkey, vaultdata)

}



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)

knife_model[id] = str_to_num(vaultdata)



}

3maj :) 

Wystarczy zmienić nazwę w menu i dopasować modele :)

Przejdź do postu

  • +
  • -
Cipciuś - zdjęcie Cipciuś 19.06.2016

Mam pytanie, czy istnieje plugin, który zmienia wygląd noża, bez żadnych specjalnych zdolności podczas posiadania takiego noża? (Jeżeli tak, to proszę o link lub pliki) Z góry dziękuje! :)

 

Przykład: 

/knife -otwiera menu z wyborem noża

 

Wybierz nóż:

1.Karambit Tigger Tooth

2.M9 Bayonet Doppler

3.Butterfly Fade

Odpowiedz

  • +
  • -
Najlepsza odpowiedź VertuS - zdjęcie VertuS 19.06.2016

#include 

#include

#include

#include

#include



#pragma semicolon 0



#define PLUGIN "Knife Mod"

#define VERSION "1.0"

#define AUTHOR "spunko"



new knife_model[33]

new g_Menu



public plugin_init() {



register_plugin(PLUGIN, VERSION, AUTHOR)



register_event("CurWeapon","CurWeapon","be","1=1")



g_Menu = register_menuid("Knife Mod")

register_menucmd(g_Menu, 1023, "knifemenu")



register_clcmd("say /knife", "display_knife")



set_task(480.0, "kmodmsg", 0, _, _, "b")

}



public plugin_precache() {

precache_model("models/knife-mod/v_butcher.mdl")

precache_model("models/knife-mod/p_butcher.mdl")

precache_model("models/knife-mod/v_machete.mdl")

precache_model("models/knife-mod/p_machete.mdl")

precache_model("models/knife-mod/v_bak.mdl")

precache_model("models/knife-mod/p_bak.mdl")

precache_model("models/knife-mod/v_pocket.mdl")

precache_model("models/knife-mod/p_pocket.mdl")

precache_model("models/v_knife.mdl")

precache_model("models/p_knife.mdl")

}



public display_knife(id) {

new menuBody[512]

add(menuBody, 511, "\rKnife Mod\w^n^n")

add(menuBody, 511, "1. Machete \y(More Damage/Low Speed)\w^n")

add(menuBody, 511, "2. Bak Knife \y(No Footsteps)\w^n")

add(menuBody, 511, "3. Pocket Knife \y(High Speed)\w^n")

add(menuBody, 511, "4. Butcher Knife \y(Low Gravity)\w^n")

add(menuBody, 511, "5. Default Knife \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, "Knife Mod")

}



public knifemenu(id, key) {

switch(key)

{

case 0: SetKnife(id , 4)

case 1: SetKnife(id , 2)

case 2: SetKnife(id , 3)

case 3: SetKnife(id , 1)

case 4: SetKnife(id , 0)

default: return PLUGIN_HANDLED

}

SaveData(id)

return PLUGIN_HANDLED

}



public SetKnife(id , Knife) {

knife_model[id] = Knife



new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo)

if ( Weapon != CSW_KNIFE )

return PLUGIN_HANDLED



new vModel[56],pModel[56]



switch(Knife)

{

case 0: {

format(vModel,55,"models/v_knife.mdl")

format(pModel,55,"models/p_knife.mdl")

}

case 1: {

format(vModel,55,"models/knife-mod/v_butcher.mdl")

format(pModel,55,"models/knife-mod/p_butcher.mdl")

}

case 2: {

format(vModel,55,"models/knife-mod/v_bak.mdl")

format(pModel,55,"models/knife-mod/p_bak.mdl")

}

case 3: {

format(vModel,55,"models/knife-mod/v_pocket.mdl")

format(pModel,55,"models/knife-mod/p_pocket.mdl")

}

case 4: {

format(vModel,55,"models/knife-mod/v_machete.mdl")

format(pModel,55,"models/knife-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){

SetKnife(id, knife_model[id])

}





public kmodmsg() {



client_print(0,print_chat,"[AMXX] Type /knife to change your knife skins")

}



public client_authorized(id){

LoadData(id)

}



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", knife_model[id])

set_vaultdata(vaultkey, vaultdata)

}



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)

knife_model[id] = str_to_num(vaultdata)



}

3maj :) 

Wystarczy zmienić nazwę w menu i dopasować modele :)

Odpowiedz

  • +
  • -
Cipciuś - zdjęcie Cipciuś 19.06.2016

Dzięki! :D

 

To jest bez efektów, tak?

 

Odpowiedz

  • +
  • -
VertuS - zdjęcie VertuS 19.06.2016

Dzięki! :D

 

To jest bez efektów, tak?

TAK :)

Odpowiedz

  • +
  • -
Cipciuś - zdjęcie Cipciuś 19.06.2016

Jak nazwać modele?

Odpowiedz

  • +
  • -
VertuS - zdjęcie VertuS 20.06.2016

Jak chcesz...

Odpowiedz

  • +
  • -
Epal - zdjęcie Epal 20.06.2016

vertus kolega nie wie jak ma nazwać modele

 

Troche go przerobiłem:

Spoiler

 

modele nazwij tak jak tu

v_Karambit.mdl
p_Karambit.mdl

v_M9Bayonet.mdl
p_M9Bayonet.mdl

v_Butterfly.mdl
p_Butterfly.mdl
 

Załączone pliki


Użytkownik Epal edytował ten post 20.06.2016 15:07
Odpowiedz