Начинаещи въпроси свързани с направата на плъгини
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
Когато ти изпише "debug not enabled", активирай "debug" режим на плъгина за да получиш цялата грешка и на кой ред се намира.
В този случай ясно е къде е тя, понеже само на едно място в кода ползваш TrieSetCell. Проблемът е, че ползваш въпросната функция преди TrieCreate, демек trie все още не е създаден, а ти се опитваш да вкараш нещо в него.
Тъй като plugin_precache се извиква преди plugin_init, трябва да преместиш TrieCreate в plugin_precache, понеже там вкарваш нещата в trie.
В този случай ясно е къде е тя, понеже само на едно място в кода ползваш TrieSetCell. Проблемът е, че ползваш въпросната функция преди TrieCreate, демек trie все още не е създаден, а ти се опитваш да вкараш нещо в него.
Тъй като plugin_precache се извиква преди plugin_init, трябва да преместиш TrieCreate в plugin_precache, понеже там вкарваш нещата в trie.
-
gadinkata
Извън линия - Потребител
- Мнения: 259
- Регистриран на: 21 Мар 2018, 12:33
- Местоположение: Враца
- Се отблагодари: 25 пъти
- Получена благодарност: 7 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
public plugin_precache() { g_tModels = TrieCreate() for(new i; i < sizeof(g_eModels); i++) { precache_player_model(g_eModels[CTModel]) precache_player_model(g_eModels[TModel]) } }
така ли трябва да бъде,защото го компилирах сложих и сървъра не иска да тръгне
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
То си е така и в оригиналния код който съм направил. Не знам какво и защо си променял. Щом не тръгва сървърът, значи ти липсват моделите които си задал.
-
gadinkata
Извън линия - Потребител
- Мнения: 259
- Регистриран на: 21 Мар 2018, 12:33
- Местоположение: Враца
- Се отблагодари: 25 пъти
- Получена благодарност: 7 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
Код за потвърждение: Избери целия код
public Player_Spawn(id)
{
if(get_user_flags(id) & ADMIN_FLAG && is_user_alive(id))
{
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 90)
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 90)
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 30)
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
}
}
-
atmax
Извън линия - Потребител
- Мнения: 492
- Регистриран на: 22 Мар 2018, 15:06
- Се отблагодари: 37 пъти
- Получена благодарност: 43 пъти
Начинаещи въпроси свързани с направата на плъгини
Ако искаш да е само за играчи с определен флаг виж как става:
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#define PLUGIN "Unlimited Weapon Clip"
#define AUTHOR "ConnorMcLeod"
#define VERSION "0.0.1"
#define CANT_RELOAD_BITSUM ((1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4))
new g_bAdmin[33]
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("CurWeapon", "Event_CurWeapon", "be", "1!0")
}
public client_putinserver(id)
{
g_bAdmin[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G)
}
public Event_CurWeapon(id)
{
if( !g_bAdmin[id] || CANT_RELOAD_BITSUM & (1<<read_data(2)) || read_data(3) > 1 )
{
return
}
set_pdata_int(get_pdata_cbase(id, 373), 51, 100, 4)
}
Rest in peace my friend I always will remember you!
-
gadinkata
Извън линия - Потребител
- Мнения: 259
- Регистриран на: 21 Мар 2018, 12:33
- Местоположение: Враца
- Се отблагодари: 25 пъти
- Получена благодарност: 7 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
в този случай който си дал, всички ли оръжия ще са са със безкрайни патрони,защото гледам си добавил гранати флаш и смокин нож и бомба?atmax написа: ↑13 Юни 2020, 07:16 Ако искаш да е само за играчи с определен флаг виж как става:Код за потвърждение: Избери целия код
#include <amxmodx> #include <fakemeta> #include <hamsandwich> #define PLUGIN "Unlimited Weapon Clip" #define AUTHOR "ConnorMcLeod" #define VERSION "0.0.1" #define CANT_RELOAD_BITSUM ((1<<CSW_HEGRENADE)|(1<<CSW_SMOKEGRENADE)|(1<<CSW_FLASHBANG)|(1<<CSW_KNIFE)|(1<<CSW_C4)) new g_bAdmin[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("CurWeapon", "Event_CurWeapon", "be", "1!0") } public client_putinserver(id) { g_bAdmin[id] = bool:(get_user_flags(id) & ADMIN_LEVEL_G) } public Event_CurWeapon(id) { if( !g_bAdmin[id] || CANT_RELOAD_BITSUM & (1<<read_data(2)) || read_data(3) > 1 ) { return } set_pdata_int(get_pdata_cbase(id, 373), 51, 100, 4) }
-
atmax
Извън линия - Потребител
- Мнения: 492
- Регистриран на: 22 Мар 2018, 15:06
- Се отблагодари: 37 пъти
- Получена благодарност: 43 пъти
Начинаещи въпроси свързани с направата на плъгини
Да всички ще са, освен тези гранати, ножката и c4, поради простата причина, че няма как да са с безкрайни патрони..
Rest in peace my friend I always will remember you!
-
gadinkata
Извън линия - Потребител
- Мнения: 259
- Регистриран на: 21 Мар 2018, 12:33
- Местоположение: Враца
- Се отблагодари: 25 пъти
- Получена благодарност: 7 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
Да разтегнем малко лакуми и да получа малко информация"урок" по multidimensional-arrays
Аз го разбрах в общи линий,как действа,но искам малко повече инфо:
В какви случай можеш да го ползваш?Нужно ли е винаги да го проверяваш през for/loop цикъл?
Отностно тоя пример,въпросите са ми:
в първата скоба,попринцип трябва да се напише 1ница,ако са два реда, 2ка,но в повечето плъгини които съм виждал,никога не съм виждал някаква стойност,другия ми въпрос е 10:00, true, false трябва ли да се сложат в кавички,и кой работи се слагат в кавички освен текст?
И подобен пример,само че с три скоби
По какъв начин,можеш да вкараш enum _: в тези скоби,кога е нужно да ползваш 3-те скоби,може ли да се ползват два enum _: във втората и третата скоба
За момента е това,ако може с прости примери да добавите към вашите коментари
Аз го разбрах в общи линий,как действа,но искам малко повече инфо:
В какви случай можеш да го ползваш?Нужно ли е винаги да го проверяваш през for/loop цикъл?
Код за потвърждение: Избери целия код
enum _:Test
{
Float:Hour,
Bool:Istina,
Bool:luja
szName[64]
szIp[32]
}
new const g_iTest[][Test] =
{
{10:00, true, false, "Gadinkata", "123.123.123.123"}
}
в първата скоба,попринцип трябва да се напише 1ница,ако са два реда, 2ка,но в повечето плъгини които съм виждал,никога не съм виждал някаква стойност,другия ми въпрос е 10:00, true, false трябва ли да се сложат в кавички,и кой работи се слагат в кавички освен текст?
И подобен пример,само че с три скоби
Код за потвърждение: Избери целия код
new const g_iTest[1][2][4]=
{
{
{1,2,3,4}, {5,6,7,8}
}
}
За момента е това,ако може с прости примери да добавите към вашите коментари
-
mi0
Извън линия - AMXX Скриптър
- Мнения: 534
- Регистриран на: 09 Дек 2016, 22:02
- Се отблагодари: 97 пъти
- Получена благодарност: 120 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
10:00 не е правилно, в кавички се слага само и единствено стринг, което е текст. Възможно е да има във втората и в третата скоба.
aka kurdokoleno
Catch Mod - 87.121.112.232:27021
Catch Mod - 87.121.112.232:27021
-
gadinkata
Извън линия - Потребител
- Мнения: 259
- Регистриран на: 21 Мар 2018, 12:33
- Местоположение: Враца
- Се отблагодари: 25 пъти
- Получена благодарност: 7 пъти
- Обратна връзка:
Начинаещи въпроси свързани с направата на плъгини
Това е пример на константа с две скоби която работи безупречно,но искам да го направя с 3 скоби
Искам в тази функция параметрите CSW_AK47, 90 да ги добавя на веднъж ,не всяка по отделно както в по горния код,но незнам не успявам да го направя с 3те скоби,защото до колкото разбирам,с трите скоби,можеш да добавиш 2 параметри с една команда примерно g_iWeapon[Weapons[TwoParameturs]
Код за потвърждение: Избери целия код
#include <amxmodx>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#define PLUGIN "addvip"
#define VERSION "1.0"
#define AUTHOR "gadinkata"
#define ADMINVIP ADMIN_LEVEL_C
enum _:Weapons
{
wName[32],
wGuns,
wBullet
}
new const g_iWeapons[][Weapons] =
{
{"weapon_m4a1", CSW_M4A1, 90},
{"weapon_ak47", CSW_AK47, 90}
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "player", "Player_Spawn", true)
// Add your code here...
}
public Player_Spawn(id)
{
if(get_user_flags(id) & ADMINVIP && is_user_alive(id))
{
for(new i; i < sizeof(g_iWeapons); i++)
{
give_item(id, g_iWeapons[i][wName])
cs_set_user_bpammo(id, g_iWeapons[i][wGuns], g_iWeapons[i][wBullet])
}
}
}
Код за потвърждение: Избери целия код
cs_set_user_bpammo(id, CSW_AK47, 90)
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 1 Отговори
- 1317 Преглеждания
-
Последно мнение от sf4n
-
- 0 Отговори
- 991 Преглеждания
-
Последно мнение от drakonuid5
-
- 3 Отговори
- 1987 Преглеждания
-
Последно мнение от npax
-
- 9 Отговори
- 565 Преглеждания
-
Последно мнение от zolfeca
-
- 2 Отговори
- 1191 Преглеждания
-
Последно мнение от thoughtz
-
- 4 Отговори
- 1891 Преглеждания
-
Последно мнение от atmax
-
- 0 Отговори
- 1596 Преглеждания
-
Последно мнение от Just
Кой е на линия
Потребители разглеждащи този форум: 0 регистрирани и 8 госта