Knife Menu
-
aLbaShaRe
Извън линия - Потребител
- Мнения: 58
- Регистриран на: 10 Окт 2016, 20:17
- Се отблагодари: 1 път
Knife Menu
Трябва ми кнайф меню работещ с този плъгин viewtopic.php?f=21&p=13348#p13348
Искам да има 5 ножа също така кварове колко да струва всеки един нож.
Искам да има 5 ножа също така кварове колко да струва всеки един нож.
-
JustInCase
Извън линия - Потребител
- Мнения: 582
- Регистриран на: 14 Окт 2016, 23:31
- Се отблагодари: 4 пъти
- Получена благодарност: 15 пъти
Knife Menu
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <engine>
#include <fakemeta>
#include <customshop>
additem ITEM_KNIFE1
#define ITEM_KNIFE1_ID "knife1"
#define ITEM_KNIFE1_NAME "Knife One"
#define ITEM_KNIFE1_PRICE 12000
#define ITEM_KNIFE1_LIMIT 1
#define ITEM_KNIFE1_SOUND ""
new VIEW_MODEL_KNIFE1[] = "models/v_1.mdl"
new PLAYER_MODEL_KNIFE1[] = "models/p_1.mdl"
new WORLD_MODEL_KNIFE1[] = "models/w_1.mdl"
additem ITEM_KNIFE2
#define ITEM_KNIFE2_ID "knife2"
#define ITEM_KNIFE2_NAME "Knife Two"
#define ITEM_KNIFE2_PRICE 12000
#define ITEM_KNIFE2_LIMIT 1
#define ITEM_KNIFE2_SOUND ""
new VIEW_MODEL_KNIFE2[] = "models/v_2.mdl"
new PLAYER_MODEL_KNIFE2[] = "models/p_2.mdl"
new WORLD_MODEL_KNIFE2[] = "models/w_2.mdl"
additem ITEM_KNIFE3
#define ITEM_KNIFE3_ID "knife3"
#define ITEM_KNIFE3_NAME "Knife Three"
#define ITEM_KNIFE3_PRICE 12000
#define ITEM_KNIFE3_LIMIT 1
#define ITEM_KNIFE3_SOUND ""
new VIEW_MODEL_KNIFE3[] = "models/v_3.mdl"
new PLAYER_MODEL_KNIFE3[] = "models/p_3.mdl"
new WORLD_MODEL_KNIFE3[] = "models/w_3.mdl"
additem ITEM_KNIFE4
#define ITEM_KNIFE4_ID "knife4"
#define ITEM_KNIFE4_NAME "Knife Four"
#define ITEM_KNIFE4_PRICE 12000
#define ITEM_KNIFE4_LIMIT 1
#define ITEM_KNIFE4_SOUND ""
new VIEW_MODEL_KNIFE4[] = "models/v_4.mdl"
new PLAYER_MODEL_KNIFE4[] = "models/p_4.mdl"
new WORLD_MODEL_KNIFE4[] = "models/w_4.mdl"
additem ITEM_KNIFE5
#define ITEM_KNIFE5_ID "knife5"
#define ITEM_KNIFE5_NAME "Knife Five"
#define ITEM_KNIFE5_PRICE 12000
#define ITEM_KNIFE5_LIMIT 1
#define ITEM_KNIFE5_SOUND ""
new VIEW_MODEL_KNIFE5[] = "models/v_5.mdl"
new PLAYER_MODEL_KNIFE5[] = "models/p_5.mdl"
new WORLD_MODEL_KNIFE5[] = "models/w_5.mdl"
new OLDWORLD_MODEL[] = "models/w_knife.mdl"
public plugin_init()
{
register_plugin("5 Knifes", "1.0", "JustInCase")
register_event("CurWeapon", "Event_CurWeapon", "be","1=1")
register_forward(FM_SetModel, "fw_SetModel")
ITEM_KNIFE1 = cshop_register_item(ITEM_KNIFE1_ID, ITEM_KNIFE1_NAME, ITEM_KNIFE1_PRICE, ITEM_KNIFE1_LIMIT, ITEM_KNIFE1_SOUND)
ITEM_KNIFE2 = cshop_register_item(ITEM_KNIFE2_ID, ITEM_KNIFE2_NAME, ITEM_KNIFE2_PRICE, ITEM_KNIFE2_LIMIT, ITEM_KNIFE2_SOUND)
ITEM_KNIFE3 = cshop_register_item(ITEM_KNIFE3_ID, ITEM_KNIFE3_NAME, ITEM_KNIFE3_PRICE, ITEM_KNIFE3_LIMIT, ITEM_KNIFE3_SOUND)
ITEM_KNIFE4 = cshop_register_item(ITEM_KNIFE4_ID, ITEM_KNIFE4_NAME, ITEM_KNIFE4_PRICE, ITEM_KNIFE4_LIMIT, ITEM_KNIFE4_SOUND)
ITEM_KNIFE5 = cshop_register_item(ITEM_KNIFE5_ID, ITEM_KNIFE5_NAME, ITEM_KNIFE5_PRICE, ITEM_KNIFE5_LIMIT, ITEM_KNIFE5_SOUND)
}
public plugin_precache()
{
precache_model(VIEW_MODEL_KNIFE1)
precache_model(PLAYER_MODEL_KNIFE1)
precache_model(WORLD_MODEL_KNIFE1)
precache_model(VIEW_MODEL_KNIFE2)
precache_model(PLAYER_MODEL_KNIFE2)
precache_model(WORLD_MODEL_KNIFE2)
precache_model(VIEW_MODEL_KNIFE3)
precache_model(PLAYER_MODEL_KNIFE3)
precache_model(WORLD_MODEL_KNIFE3)
precache_model(VIEW_MODEL_KNIFE4)
precache_model(PLAYER_MODEL_KNIFE4)
precache_model(WORLD_MODEL_KNIFE4)
precache_model(VIEW_MODEL_KNIFE5)
precache_model(PLAYER_MODEL_KNIFE5)
precache_model(WORLD_MODEL_KNIFE5)
}
public Event_CurWeapon(id)
{
new weaponID = read_data(2)
if(weaponID != CSW_KNIFE)
return PLUGIN_CONTINUE
if(cshopHasItem(id, ITEM_KNIFE1)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE1)
if(!is_blank(PLAYER_MODEL_KNIFE1))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE1)
}
else if(cshopHasItem(id, ITEM_KNIFE2)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE2)
if(!is_blank(PLAYER_MODEL_KNIFE2))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE2)
}
else if(cshopHasItem(id, ITEM_KNIFE3)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE3)
if(!is_blank(PLAYER_MODEL_KNIFE3))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE3)
}
else if(cshopHasItem(id, ITEM_KNIFE4)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE4)
if(!is_blank(PLAYER_MODEL_KNIFE4))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE4)
}
else if(cshopHasItem(id, ITEM_KNIFE5)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE5)
if(!is_blank(PLAYER_MODEL_KNIFE5))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE5)
}
return PLUGIN_CONTINUE
}
public fw_SetModel(entity, model[])
{
if(!is_valid_ent(entity))
return FMRES_IGNORED
if(!equali(model, OLDWORLD_MODEL))
return FMRES_IGNORED
new className[33]
entity_get_string(entity, EV_SZ_classname, className, 32)
if(equal(className, "weaponbox") || equal(className, "armoury_entity") || equal(className, "grenade"))
{
if(cshopHasItem(entity, ITEM_KNIFE1) && !is_blank(WORLD_MODEL_KNIFE1))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE1)
else if(cshopHasItem(entity, ITEM_KNIFE2) && !is_blank(WORLD_MODEL_KNIFE2))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE2)
else if(cshopHasItem(entity, ITEM_KNIFE3) && !is_blank(WORLD_MODEL_KNIFE3))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE3)
else if(cshopHasItem(entity, ITEM_KNIFE4) && !is_blank(WORLD_MODEL_KNIFE4))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE4)
else if(cshopHasItem(entity, ITEM_KNIFE5) && !is_blank(WORLD_MODEL_KNIFE5))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE5)
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
bool:is_blank(szString[])
return szString[0] == EOS ? true : false
Оправи си моделите и всичко и тествай дали работи би трябвало всичко да е наред.
MANSION - HNS : 45.144.155.99:27026
ONLINE
ONLINE
-
sianbg
Извън линия - Потребител
- Мнения: 232
- Регистриран на: 13 Ное 2017, 12:18
- Получена благодарност: 1 път
- Обратна връзка:
Knife Menu
Искам да попитам, ако имам само view модел как да ги сложа ? Просто да регистрирам оригиналните world и player модели ?
Edit: Защо ми дава тази грешка ?
Обнових engine.inc и kRenderFxNone съществува в файла.
Edit: Защо ми дава тази грешка ?
Код за потвърждение: Избери целия код
//// shop_knifes.sma
//
// C:\Users\sianbg\Desktop\zm\Server\cstrike\addons\amxmodx\scripting\include\engine.inc(799) : error 017: undefined symbol "kRenderFxNone"
//
// 1 Error.
// Could not locate output file compiled\shop_knifes.amx (compile failed).
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
Knife Menu
В кода има направено "опит" за модели без p_ или w_ модели, обаче неуспешен. Във функцията plugin_precache() преди всеки precache_model() ред трябва да се добави проверка дали стрингът е празен. Ето пример за първия ред, с другите предполагам ще се оправиш сам:
Относно грешката - не е свързана с плъгина. Имаш проблем с include файловете. Явно са стари. Предполагам ползваш AMXX 1.8.3, изтегли си последния dev build (base & cstrike) от тук и задължително обнови include файловете (библиотеките).
Код за потвърждение: Избери целия код
if(!is_blank(VIEW_MODEL_KNIFE1))
precache_model(VIEW_MODEL_KNIFE1)
-
sianbg
Извън линия - Потребител
- Мнения: 232
- Регистриран на: 13 Ное 2017, 12:18
- Получена благодарност: 1 път
- Обратна връзка:
Knife Menu
Обнових всичко, но пак същата грешка. Ако може да ми го компилираш. С най-новата версия съм за момента.
Код за потвърждение: Избери целия код
#include <engine>
#include <fakemeta>
#include <customshop>
additem ITEM_KNIFE1
#define ITEM_KNIFE1_ID "knife1"
#define ITEM_KNIFE1_NAME "Knife One"
#define ITEM_KNIFE1_PRICE 12000
#define ITEM_KNIFE1_LIMIT 1
#define ITEM_KNIFE1_SOUND ""
new VIEW_MODEL_KNIFE1[] = "models/csold/v_knife1.mdl"
new PLAYER_MODEL_KNIFE1[] = "models/p_knife.mdl"
new WORLD_MODEL_KNIFE1[] = "models/w_knife.mdl"
additem ITEM_KNIFE2
#define ITEM_KNIFE2_ID "knife2"
#define ITEM_KNIFE2_NAME "Knife Two"
#define ITEM_KNIFE2_PRICE 12000
#define ITEM_KNIFE2_LIMIT 1
#define ITEM_KNIFE2_SOUND ""
new VIEW_MODEL_KNIFE2[] = "models/csold/v_knife2.mdl"
new PLAYER_MODEL_KNIFE2[] = "models/p_knife.mdl"
new WORLD_MODEL_KNIFE2[] = "models/w_knife.mdl"
additem ITEM_KNIFE3
#define ITEM_KNIFE3_ID "knife3"
#define ITEM_KNIFE3_NAME "Knife Three"
#define ITEM_KNIFE3_PRICE 12000
#define ITEM_KNIFE3_LIMIT 1
#define ITEM_KNIFE3_SOUND ""
new VIEW_MODEL_KNIFE3[] = "models/csold/v_knife3.mdl"
new PLAYER_MODEL_KNIFE3[] = "models/p_knife.mdl"
new WORLD_MODEL_KNIFE3[] = "models/w_knife.mdl"
additem ITEM_KNIFE4
#define ITEM_KNIFE4_ID "knife4"
#define ITEM_KNIFE4_NAME "Knife Four"
#define ITEM_KNIFE4_PRICE 12000
#define ITEM_KNIFE4_LIMIT 1
#define ITEM_KNIFE4_SOUND ""
new VIEW_MODEL_KNIFE4[] = "models/csold/v_knife4.mdl"
new PLAYER_MODEL_KNIFE4[] = "models/p_knife.mdl"
new WORLD_MODEL_KNIFE4[] = "models/w_knife.mdl"
additem ITEM_KNIFE5
#define ITEM_KNIFE5_ID "knife5"
#define ITEM_KNIFE5_NAME "Knife Five"
#define ITEM_KNIFE5_PRICE 12000
#define ITEM_KNIFE5_LIMIT 1
#define ITEM_KNIFE5_SOUND ""
new VIEW_MODEL_KNIFE5[] = "models/csold/p_knife5.mdl"
new PLAYER_MODEL_KNIFE5[] = "models/p_knife.mdl"
new WORLD_MODEL_KNIFE5[] = "models/w_knife.mdl"
new OLDWORLD_MODEL[] = "models/w_knife.mdl"
public plugin_init()
{
register_plugin("5 Knifes", "1.0", "JustInCase")
register_event("CurWeapon", "Event_CurWeapon", "be","1=1")
register_forward(FM_SetModel, "fw_SetModel")
ITEM_KNIFE1 = cshop_register_item(ITEM_KNIFE1_ID, ITEM_KNIFE1_NAME, ITEM_KNIFE1_PRICE, ITEM_KNIFE1_LIMIT, ITEM_KNIFE1_SOUND)
ITEM_KNIFE2 = cshop_register_item(ITEM_KNIFE2_ID, ITEM_KNIFE2_NAME, ITEM_KNIFE2_PRICE, ITEM_KNIFE2_LIMIT, ITEM_KNIFE2_SOUND)
ITEM_KNIFE3 = cshop_register_item(ITEM_KNIFE3_ID, ITEM_KNIFE3_NAME, ITEM_KNIFE3_PRICE, ITEM_KNIFE3_LIMIT, ITEM_KNIFE3_SOUND)
ITEM_KNIFE4 = cshop_register_item(ITEM_KNIFE4_ID, ITEM_KNIFE4_NAME, ITEM_KNIFE4_PRICE, ITEM_KNIFE4_LIMIT, ITEM_KNIFE4_SOUND)
ITEM_KNIFE5 = cshop_register_item(ITEM_KNIFE5_ID, ITEM_KNIFE5_NAME, ITEM_KNIFE5_PRICE, ITEM_KNIFE5_LIMIT, ITEM_KNIFE5_SOUND)
}
public plugin_precache()
{
precache_model(VIEW_MODEL_KNIFE1)
//precache_model(PLAYER_MODEL_KNIFE1)
//precache_model(WORLD_MODEL_KNIFE1)
precache_model(VIEW_MODEL_KNIFE2)
//precache_model(PLAYER_MODEL_KNIFE2)
//precache_model(WORLD_MODEL_KNIFE2)
precache_model(VIEW_MODEL_KNIFE3)
//precache_model(PLAYER_MODEL_KNIFE3)
//precache_model(WORLD_MODEL_KNIFE3)
precache_model(VIEW_MODEL_KNIFE4)
//precache_model(PLAYER_MODEL_KNIFE4)
//precache_model(WORLD_MODEL_KNIFE4)
precache_model(VIEW_MODEL_KNIFE5)
//precache_model(PLAYER_MODEL_KNIFE5)
//precache_model(WORLD_MODEL_KNIFE5)
}
public Event_CurWeapon(id)
{
new weaponID = read_data(2)
if(weaponID != CSW_KNIFE)
return PLUGIN_CONTINUE
if(cshopHasItem(id, ITEM_KNIFE1)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE1)
if(!is_blank(PLAYER_MODEL_KNIFE1))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE1)
}
else if(cshopHasItem(id, ITEM_KNIFE2)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE2)
if(!is_blank(PLAYER_MODEL_KNIFE2))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE2)
}
else if(cshopHasItem(id, ITEM_KNIFE3)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE3)
if(!is_blank(PLAYER_MODEL_KNIFE3))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE3)
}
else if(cshopHasItem(id, ITEM_KNIFE4)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE4)
if(!is_blank(PLAYER_MODEL_KNIFE4))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE4)
}
else if(cshopHasItem(id, ITEM_KNIFE5)) {
set_pev(id, pev_viewmodel2, VIEW_MODEL_KNIFE5)
if(!is_blank(PLAYER_MODEL_KNIFE5))
set_pev(id, pev_weaponmodel2, PLAYER_MODEL_KNIFE5)
}
return PLUGIN_CONTINUE
}
public fw_SetModel(entity, model[])
{
if(!is_valid_ent(entity))
return FMRES_IGNORED
if(!equali(model, OLDWORLD_MODEL))
return FMRES_IGNORED
new className[33]
entity_get_string(entity, EV_SZ_classname, className, 32)
if(equal(className, "weaponbox") || equal(className, "armoury_entity") || equal(className, "grenade"))
{
if(cshopHasItem(entity, ITEM_KNIFE1) && !is_blank(WORLD_MODEL_KNIFE1))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE1)
else if(cshopHasItem(entity, ITEM_KNIFE2) && !is_blank(WORLD_MODEL_KNIFE2))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE2)
else if(cshopHasItem(entity, ITEM_KNIFE3) && !is_blank(WORLD_MODEL_KNIFE3))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE3)
else if(cshopHasItem(entity, ITEM_KNIFE4) && !is_blank(WORLD_MODEL_KNIFE4))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE4)
else if(cshopHasItem(entity, ITEM_KNIFE5) && !is_blank(WORLD_MODEL_KNIFE5))
engfunc(EngFunc_SetModel, entity, WORLD_MODEL_KNIFE5)
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
bool:is_blank(szString[])
return szString[0] == EOS ? true : false
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
Knife Menu
Доста се помъчих да разбера какво е станало, понеже и при мен даваше същата грешка като взех кода от твоето мнение. Най-накрая забелязах, че по погрешка си премахнал първия ред от кода (#include <amxmodx>) - без него... няма как да стане.
-
sianbg
Извън линия - Потребител
- Мнения: 232
- Регистриран на: 13 Ное 2017, 12:18
- Получена благодарност: 1 път
- Обратна връзка:
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 1 Отговори
- 2251 Преглеждания
-
Последно мнение от erra1881
-
- 11 Отговори
- 3380 Преглеждания
-
Последно мнение от summertime vibes
-
- 12 Отговори
- 4362 Преглеждания
-
Последно мнение от K!lLAlL
-
- 7 Отговори
- 1183 Преглеждания
-
Последно мнение от Amine
-
- 0 Отговори
- 776 Преглеждания
-
Последно мнение от L.O.F.I
-
- 3 Отговори
- 1737 Преглеждания
-
Последно мнение от OciXCrom
-
- 9 Отговори
- 2090 Преглеждания
-
Последно мнение от zolfeca
Кой е на линия
Потребители разглеждащи този форум: 0 регистрирани и 12 госта