Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.
Модераторы: Subb98, liFe iS GoOD
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.
В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.
Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.
nemec21 » 19 мар 2017, 12:52
- Код: Выделить всё
public SpawnPlayer()
{
get_players(players, num, "ach")
for(new i = 0; i < num; i++)
{
player = players[i]
if(get_user_flags(player) & ADMIN_LEVEL_H)
{
give_item(player,"weapon_hegrenade")
give_item(player,"weapon_flashbang")
cs_set_user_bpammo(player , CSW_FLASHBANG, 2)
give_item(player,"weapon_smokegrenade")
give_item(player,"item_assaultsuit")
give_item(player,"item_thighpack")
if(g_UsePistol[player][DEAGLE])
{
drop_weapons(player, 2)
give_item(player,"weapon_deagle")
cs_set_user_bpammo(player , CSW_DEAGLE, 35)
}
if(g_UsePistol[player][USP])
{
drop_weapons(player, 2)
give_item(player,"weapon_usp")
cs_set_user_bpammo(player, CSW_USP, 100)
}
if(g_UsePistol[player][GLOCK])
{
drop_weapons(player, 2)
give_item(player,"weapon_glock18")
cs_set_user_bpammo(player, CSW_GLOCK18, 120)
}
}
}
}
-
nemec21
-
- Сообщения: 799
- Зарегистрирован: 07 фев 2016, 17:08
- Откуда: Беларусь
- Благодарил (а): 212 раз.
- Поблагодарили: 44 раз.
- Опыт программирования: Около 6 месяцев
- Языки программирования: Counter-Strike 1.6
lop50956 » 19 мар 2017, 12:59
весь код покажи
-
lop50956
-
- Сообщения: 178
- Зарегистрирован: 29 ноя 2016, 00:36
- Забанен
- Благодарил (а): 18 раз.
- Поблагодарили: 16 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Php
flymic24 » 19 мар 2017, 13:01
nemec21,
- Код: Выделить всё
public plugin_init()
{
RegisterHam(Ham_Spawn, "player", "HamHook_PlayerSpawn", 1);
}
public HamHook_PlayerSpawn(const iPlayer)
{
}
-
flymic24
-
- Сообщения: 209
- Зарегистрирован: 05 окт 2012, 17:29
- Откуда: Bryansk
- Благодарил (а): 4 раз.
- Поблагодарили: 76 раз.
- Опыт программирования: Около года
- Языки программирования: Counter-Strike 1.6
-
nemec21 » 19 мар 2017, 13:05
- Код: Выделить всё
new key = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_0
new const PRIMARY_WEAPONS_BIT_SUM = (1<<CSW_SCOUT)|(1<<CSW_XM1014)|(1<<CSW_MAC10)|(1<<CSW_AUG)|(1<<CSW_UMP45)|(1<<CSW_SG550)|(1<<CSW_GALIL)|(1<<CSW_FAMAS)|(1<<CSW_AWP)|(1<<CSW_MP5NAVY)|(1<<CSW_M249)|(1<<CSW_M3)|(1<<CSW_M4A1)|(1<<CSW_TMP)|(1<<CSW_G3SG1)|(1<<CSW_SG552)|(1<<CSW_AK47)|(1<<CSW_P90)
new const SECONDARY_WEAPONS_BIT_SUM = (1<<CSW_P228)|(1<<CSW_ELITE)|(1<<CSW_FIVESEVEN)|(1<<CSW_USP)|(1<<CSW_GLOCK18)|(1<<CSW_DEAGLE)
new g_szBlockMapPrefixList[][] =
{
"awp_india",
"fy_pool_day",
"aim_map_hlo",
"35hp_2",
"fy_snow"
}
enum _:PISTOLS
{
DEAGLE,
USP,
GLOCK
}
new gl_RoundsCount
new bool:g_UsePistol[33][PISTOLS]
new szMapName[32]
public plugin_init()
{
register_plugin ("LS VipzSistem", "1.0", "N.E.M.E.C.[BLR]")
get_mapname(szMapName, charsmax(szMapName))
for(new i; i < sizeof(g_szBlockMapPrefixList); i++)
{
if (contain(g_szBlockMapPrefixList[i], szMapName) != INVALID_HANDLE)
{
pause("d");
}
}
register_concmd("vipmenu", "VipMenu")
register_event("HLTV", "EventStartRound", "a", "1=0", "2=0")
register_event("TextMsg", "EventRestartRound", "a", "2=#Game_will_restart_in","2=#Game_Commencing")
register_menu("VipMenu", key, "VipMenuFunc")
register_menu("AmxPistols", key, "PistolsMenu")
RegisterHam(Ham_Spawn, "player", "SpawnPlayer", 1)
}
public EventStartRound()
gl_RoundsCount++
public EventRestartRound()
gl_RoundsCount = 0
public client_authorized(id)
reset_pistols(id)
public SpawnPlayer(id)
{
if(get_user_flags(id) & ADMIN_LEVEL_H && is_user_alive(id))
{
give_item(id,"weapon_hegrenade")
give_item(id,"weapon_flashbang")
cs_set_user_bpammo(id , CSW_FLASHBANG, 2)
give_item(id,"weapon_smokegrenade")
give_item(id,"item_assaultsuit")
give_item(id,"item_thighpack")
if(g_UsePistol[id][DEAGLE])
{
drop_weapons(id, 2)
give_item(id,"weapon_deagle")
cs_set_user_bpammo(id , CSW_DEAGLE, 35)
}
if(g_UsePistol[id][USP])
{
drop_weapons(id, 2)
give_item(id,"weapon_usp")
cs_set_user_bpammo(id, CSW_USP, 100)
}
if(g_UsePistol[id][GLOCK])
{
drop_weapons(id, 2)
give_item(id,"weapon_glock18")
cs_set_user_bpammo(id, CSW_GLOCK18, 120)
}
}
}
public VipMenu(id)
{
if(!(get_user_flags(id) & ADMIN_LEVEL_H) || !is_user_alive(id))
return
if(cs_get_user_buyzone(id))
{
new ctime[64]
get_time("%m/%d/%Y - %H.%M.%S", ctime, 63)
static weaponmenu[650], len
len = 0
len = formatex(weaponmenu[len], charsmax(weaponmenu) - len, " ...[Immortal_classic 18+]...^n \yV.I.P \rÌåíþ^n^n\d ...%s...^n^n", ctime)
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount >= 2) ? "\w1. Ak-47^n" : "")
key |= MENU_KEY_1
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount >= 2) ? "2. M4a1^n" : "")
key |= MENU_KEY_2
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount >= 3) ? "3. Awp^n" : "")
key |= MENU_KEY_3
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, (gl_RoundsCount >= 2) ? "4. Famas^n^n" : "")
key |= MENU_KEY_4
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "\w5. Âàø ïèñòîëåò")
key |= MENU_KEY_7
if(g_UsePistol[id][DEAGLE])
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\yDeagle\r]^n")
}
else if(g_UsePistol[id][USP])
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\yUsp\r]^n")
}
else if(g_UsePistol[id][GLOCK])
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\yGlock18\r]^n")
}
else
{
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, " \r[\dStandart\r]^n")
}
len += formatex(weaponmenu[len], charsmax(weaponmenu) - len, "^n\w0. Exit")
key |= MENU_KEY_0
show_menu(id, key, weaponmenu, 30, "VipMenu")
}
else
{
ChatColor(id, "^3[ ^4Vip Menu ^3] ^1Äîñòóïíà òîëüêî â ^" ^3ÇÎÍÅ ÇÀÊÓÏÊÈ^1 ^"")
}
}
public VipMenuFunc(id, key)
{
switch(key)
{
case 0:
if(gl_RoundsCount >= 2)
{
drop_weapons(id, 1)
give_item(id,"weapon_ak47")
cs_set_user_bpammo(id , CSW_AK47, 90)
}
case 1:
if(gl_RoundsCount >= 2)
{
drop_weapons(id, 1)
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id , CSW_M4A1, 90)
}
case 2:
if(gl_RoundsCount >= 3)
{
drop_weapons(id, 1)
give_item(id, "weapon_awp")
cs_set_user_bpammo(id , CSW_AWP, 30)
}
case 3:
if(gl_RoundsCount >= 2)
{
drop_weapons(id, 1)
give_item(id, "weapon_famas")
cs_set_user_bpammo(id , CSW_FAMAS, 90)
}
case 4:
{
AmxPistolsMenu(id)
}
case 9: return
}
}
public AmxPistolsMenu(id)
{
static pistolsmenu[650], len
len = 0
len = formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\yP.i.s.t.o.l.s \rÌÅÍÞ^n^n")
len += formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "\w1. Deagle^n")
key |= MENU_KEY_1
len += formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "2. Usp^n")
key |= MENU_KEY_2
len += formatex(pistolsmenu[len], charsmax(pistolsmenu) - len, "3. Glock18^n^n")
key |= MENU_KEY_3
len += formatex(pistolsmenu[len], charsmax(pistolsmenu) - len,(gl_RoundsCount >= 2) ? "0. Back" : "0. Exit")
show_menu(id, key, pistolsmenu, 30, "AmxPistols")
}
stock reset_pistols(id)
{
for(new i; i<PISTOLS; i++)
g_UsePistol[id][i] = false;
}
public PistolsMenu(id, key)
{
switch(key)
{
case 0:
{
reset_pistols(id)
g_UsePistol[id][DEAGLE] = true
drop_weapons(id, 2)
give_item(id,"weapon_deagle")
cs_set_user_bpammo(id , CSW_DEAGLE, 35)
if(gl_RoundsCount < 2)
return
VipMenu(id)
}
case 1:
{
reset_pistols(id)
g_UsePistol[id][USP] = true
drop_weapons(id, 2)
give_item(id,"weapon_usp")
cs_set_user_bpammo(id , CSW_USP, 100)
if(gl_RoundsCount < 2)
return
VipMenu(id)
}
case 2:
{
reset_pistols(id)
g_UsePistol[id][GLOCK] = true
drop_weapons(id, 2)
give_item(id,"weapon_glock18")
cs_set_user_bpammo(id , CSW_GLOCK18, 120)
if(gl_RoundsCount < 2)
return
VipMenu(id)
}
case 9:
{
if(gl_RoundsCount < 2)
return
VipMenu(id)
}
}
}
stock drop_weapons(id, dropwhat)
{
static weapons[32], num, i, weaponid
num = 0
get_user_weapons(id, weapons, num)
for (i = 0; i < num; i++)
{
weaponid = weapons[i]
if ((dropwhat == 1 && ((1<<weaponid) & PRIMARY_WEAPONS_BIT_SUM)) || (dropwhat == 2 && ((1<<weaponid) & SECONDARY_WEAPONS_BIT_SUM)))
{
static wname[32]
get_weaponname(weaponid, wname, charsmax(wname))
engclient_cmd(id, "drop", wname)
}
}
}
stock ChatColor(const id,const input[],any:...)
{
new count = 1, players[32]
static msg[191]
vformat(msg,190,input, 3)
replace_all(msg,190,"!g", "^4")
replace_all(msg,190,"!y", "^1")
replace_all(msg,190,"!t", "^3")
if (id) players[0] = id;else get_players(players,count,"ch")
{
for (new i = 0;i < count;i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
-
nemec21
-
- Сообщения: 799
- Зарегистрирован: 07 фев 2016, 17:08
- Откуда: Беларусь
- Благодарил (а): 212 раз.
- Поблагодарили: 44 раз.
- Опыт программирования: Около 6 месяцев
- Языки программирования: Counter-Strike 1.6
lop50956 » 19 мар 2017, 13:26
RegisterHam(Ham_Spawn, "player", "SpawnPlayer", 1)
-
lop50956
-
- Сообщения: 178
- Зарегистрирован: 29 ноя 2016, 00:36
- Забанен
- Благодарил (а): 18 раз.
- Поблагодарили: 16 раз.
- Опыт программирования: Больше трех лет
- Языки программирования: Php
nemec21 » 19 мар 2017, 13:49
lop50956. для чего ты это показываешь???
RegisterHam(Ham_Spawn, "player", "SpawnPlayer", 1)
я понимаю что этим я регистрирую спавн игрока. который повторяется после события
-
nemec21
-
- Сообщения: 799
- Зарегистрирован: 07 фев 2016, 17:08
- Откуда: Беларусь
- Благодарил (а): 212 раз.
- Поблагодарили: 44 раз.
- Опыт программирования: Около 6 месяцев
- Языки программирования: Counter-Strike 1.6
Вернуться в Скриптинг
Кто сейчас на конференции
Сейчас этот форум просматривают: Bing [Bot] и гости: 8