Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Раздел для общения на любые темы, для которых не нашлось места в остальных разделах. Если Вашу тему можно отнести по смыслу к другому разделу, лучше создайте её там, иначе Вас накажут.

В данном форуме немного понижены требования к Общим правилам форума, а именно:
1. Информативность темы
2. Отходить от первоначального смысла темы

!
В разделе запрещено создавать темы связанные с раскруткой игровых серверов
16 страниц V  « 8 9 10 ... 14 15 »

Зимний сервер или готовим сервер к НГ

, Новогодние плагины/карты/модели
Готовишь сервер к НГ?
Всего голосов: 222
Гости не могут голосовать 
Статус пользователя y4eHuK
сообщение 6.12.2014, 21:29
Сообщение #161


Стаж: 15 лет

Сообщений: 268
Благодарностей: 61
Полезность: 186

Цитата(ExTPuMaJI @ 20.11.2014, 21:12) *
Чтобы было под меню
Скриншот
[attachment=29178:__________5.png]

Не читал всё
Но ваш вопрос можно решить примерно так

Код
.b-page_newyear .b-head-decor{
   position:absolute;
   top:30px;
   left:0;
   display:block;
   height:100px;
   width:100%;
   overflow:hidden;
   background:url(balls/b-head-decor_newyear.png) repeat-x 0 0
}

Где top:30px; правим под себя
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bokky
сообщение 6.12.2014, 22:19
Сообщение #162
Стаж: 12 лет

Сообщений: 98
Благодарностей: 56
Полезность: < 0

Можно как-то заменить тетрисовый снег на какой-то более красивее? IPB.


/del
Заменил derisive.gif

Отредактировал: Bokky, - 6.12.2014, 23:58
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя strelok93
сообщение 7.12.2014, 21:41
Сообщение #163


Стаж: 12 лет

Сообщений: 905
Благодарностей: 392
Полезность: 576

Добавьте в шапку снежки из этой темы! Там 2 разных плагина снежков smile.gif
https://c-s.net.ua/forum/topic68414.html&st=80
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя cyber1741
сообщение 8.12.2014, 16:49
Сообщение #164


Стаж: 13 лет

Сообщений: 1473
Благодарностей: 222
Полезность: 95

Плагин подарки #2
чет иероглифы какие то) менял кодировка,то иероглифы то китайский
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя strelok93
сообщение 9.12.2014, 20:16
Сообщение #165


Стаж: 12 лет

Сообщений: 905
Благодарностей: 392
Полезность: 576

Цитата(cyber1741 @ 8.12.2014, 16:45) *
Плагин подарки #2
чет иероглифы какие то) менял кодировка,то иероглифы то китайский

Все верно, я переводил под себя, но там в нем милион багов помимо иероглифов(
Например на половине карт подарки не сохраняются и некоторые квары не работают
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fraig
сообщение 10.12.2014, 10:55
Сообщение #166
Стаж: 14 лет

Сообщений: 93
Благодарностей: 7
Полезность: < 0

Плагин "До нового года осталось..."
Каждый раунд выводит в чате сообщение. Есть два варианта:

Оригинал
До нового года осталось N месяцев N недель N дней
Код:
/*
Created Nice New Year by sector for www.chatbox.do.am
Web Help - www.chatbox.do.am

All ingenious is simple - Nice. Made in Russia.
*/

#include <amxmodx>

public plugin_init()
{
register_plugin("Nice New Year", "1.0", "sector")

register_logevent("nice_ny_day_func", 2, "1=Round_Start")
}

public nice_ny_day_func()
{
new nMonth[3], nWeek[3], nDay[4]

get_time("%m", nMonth, 2)
get_time("%U", nWeek, 2)
get_time("%j", nDay, 3)

new nMonth2 = str_to_num(nMonth)
new nWeek2 = str_to_num(nWeek)
new nDay2 = str_to_num(nDay)

nChatPrint(0, "^1[^4Nice New Year^1] До нового года осталось ^4%d^1 мес. ^4%d^1 нед. или ^4%d^1 дн.!", (12 - nMonth2), (52 - nWeek2), (365 - nDay2))
}

stock nChatPrint(const id, const input[], any:...)
{
new nCount = 1, nNum[32]

static nMsgs[191]

vformat(nMsgs, 190, input, 3)

replace_all(nMsgs, 190, "!g", "^4")
replace_all(nMsgs, 190, "!n", "^1")
replace_all(nMsgs, 190, "!t", "^3")


if(id) nNum[0] = id; else get_players(nNum, nCount, "ch")
{
for(new i = 0; i < nCount; i++)
{
if(is_user_connected(nNum[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, nNum[i])

write_byte(nNum[i])

write_string(nMsgs)

message_end()
}
}
}
}

Переделанный мною
До нового года осталось N дней N часов N минут N секунд
Код:
/*
Created Nice New Year by sector for www.chatbox.do.am
Web Help - www.chatbox.do.am

All ingenious is simple - Nice. Made in Russia.
*/

#include <amxmodx>

public plugin_init()
{
register_plugin("Nice New Year", "1.0", "sector")

register_logevent("nice_ny_day_func", 2, "1=Round_Start")
}

public nice_ny_day_func()
{
new nMonth[3], nWeek[3], nDay[4], nHour[3], nMinute[3], nSecond[3]

get_time("%m", nMonth, 2)
get_time("%U", nWeek, 2)
get_time("%j", nDay, 3)
get_time("%H", nHour, 2)
get_time("%M", nMinute, 2)
get_time("%S", nSecond, 2)

new nMonth2 = str_to_num(nMonth)
new nWeek2 = str_to_num(nWeek)
new nDay2 = str_to_num(nDay)
new nHour2 = str_to_num(nHour)
new nMinute2 = str_to_num(nMinute)
new nSecond2 = str_to_num(nSecond)

nChatPrint(0, "^1[^4New Year 2015^1] До нового года осталось ^4%d^1 дн. ^4%d^1 ч. ^4%d^1 м. ^4%d^1 с.!", (365 - nDay2), (23 - nHour2), (60 - nMinute2), (60 - nSecond2))
}

stock nChatPrint(const id, const input[], any:...)
{
new nCount = 1, nNum[32]

static nMsgs[191]

vformat(nMsgs, 190, input, 3)

replace_all(nMsgs, 190, "!g", "^4")
replace_all(nMsgs, 190, "!n", "^1")
replace_all(nMsgs, 190, "!t", "^3")


if(id) nNum[0] = id; else get_players(nNum, nCount, "ch")
{
for(new i = 0; i < nCount; i++)
{
if(is_user_connected(nNum[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, nNum[i])

write_byte(nNum[i])

write_string(nMsgs)

message_end()
}
}
}
}

_______________
И еще модель снегурки для CT, вчера сидел перерисовывал, хотел себе на сервер поставить, но получилось совсем не очень sad.gif Может кому пригодиться.
Скриншот
Прикрепленное изображение

Прикрепленный файл  snegurka_ct.zip ( 1,54 мегабайт ) Кол-во скачиваний: 7


Отредактировал: Fraig, - 10.12.2014, 11:07
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Nebo
сообщение 10.12.2014, 11:15
Сообщение #167


Стаж: 13 лет
Город: Казань

Сообщений: 3181
Благодарностей: 1015
Полезность: 701

Fraig, баба яга получилась))
____
А что будет, когда время наступит? может тоже выводить сообщение..

Отредактировал: Nebo, - 10.12.2014, 11:17
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fraig
сообщение 10.12.2014, 11:39
Сообщение #168
Стаж: 14 лет

Сообщений: 93
Благодарностей: 7
Полезность: < 0

Цитата(Nebo @ 10.12.2014, 10:11) *
Fraig, баба яга получилась))
____
А что будет, когда время наступит? может тоже выводить сообщение..


Я просто ее раскрасил)

А насчет отсчета, скорее всего он начнет отсчет до следующего НГ: До нового года осталось 365 д. 23 ч. 59 м. 59 с.
А вообще хотелось бы чтобы за 10 секунд до НГ все остановились, выбросили оружие, начался отсчет (как при взрыве бомбы: ten, nine, eight..) и потом везде начал стрелять салют. Но я не знаю как и не знаю возможно ли так сделать, я не умею писать плагины..

Отредактировал: Fraig, - 10.12.2014, 11:41
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя DEATHigor
сообщение 12.12.2014, 14:44
Сообщение #169
Стаж: 11 лет

Сообщений: 0
Благодарностей: 1
Полезность: 0

куда ети файлы вставлять?
!
Не нужно цитировать большие посты целиком
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя taulalan
сообщение 13.12.2014, 17:40
Сообщение #170


Стаж: 15 лет

Сообщений: 66
Благодарностей: 30
Полезность: 240

Поставил SantaHats
Код:
L 12/13/2014 - 15:55:39: Start of error session.
L 12/13/2014 - 15:55:39: Info (map "de_dust2") (file "addons/amxmodx/logs/error_20141213.log")
L 12/13/2014 - 15:55:39: [AMXX] Load error 17 (invalid file format or version) (plugin "santahat.amxx")
L 12/13/2014 - 16:44:46: Start of error session.
L 12/13/2014 - 16:44:46: Info (map "de_dust2_2x2") (file "addons/amxmodx/logs/error_20141213.log")
L 12/13/2014 - 16:44:46: [AMXX] Load error 17 (invalid file format or version) (plugin "santahat.amxx")

Meta list сервера на хостинге

Код:
[ 1] AMX Mod X RUN - amxmodx.so v1.8.3-d ini Start ANY 
[ 2] dproto_EF RUN - dproto.so v0.9.391 ini Start Never
[ 3] VoiceTranscoder RUN - vtc.so v106 ini ANY
[ 4] WHBlocker RUN - whblocker.so v1.5.370 ini ANY
[ 5] Semiclip RUN - semiclip_mm_i386 v1.9f ini ANY
[ 6] CSX RUN - csx_amxx_i386.so v1.8.3-d pl1 ANY
[ 7] Ham Sandwich RUN - hamsandwich_amxx v1.8.3-d pl1 ANY
[ 8] Orpheu RUN - orpheu_amxx_i386 v2.5.1 pl1 ANY
[ 9] MySQL RUN - mysql_amxx_i386. v1.8.3-d pl1 ANY
[10] CStrike RUN - cstrike_amxx_i38 v1.8.3-d pl1 ANY
[11] Engine RUN - engine_amxx_i386 v1.8.3-d pl1 ANY
[12] FakeMeta RUN - fakemeta_amxx_i3 v1.8.3-d pl1 ANY
[13] Fun RUN - fun_amxx_i386.so v1.8.3-d pl1 ANY
13 plugins, 13 running
Компилировал локально
Meta list сервера локально

Код:
[ 1] AMX Mod X        RUN   -    amxmodx_mm.dll    v1.8.3-d  ini  Start ANY
[ 2] dproto_EF RUN - dproto.dll v0.9.476 ini Start Never
[ 3] CStrike RUN - cstrike_amxx.dll v1.8.3-d pl1 ANY ANY
[ 4] FakeMeta RUN - fakemeta_amxx.dl v1.8.3-d pl1 ANY ANY
[ 5] CSDM2 RUN - csdm_amxx.dll v2.1.3c- pl1 ANY ANY
5 plugins, 5 running

В чем проблема? Может кто скинет свой плагин?


Парк AREON – Подключение ИП и самозанятых по всей России
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 18.12.2014, 21:43
Сообщение #171


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(kes @ 27.11.2014, 17:58) *
XenForo



Музыкальная гирлянда
Украшение сайта к Новому Году в виде музыкальной гирлянды. При наведение указателя мыши, шарики качаются и издают звон.
Скриншоты


Скачать

Снег и снежный курсор
Настраиваемое дополнение для Вашего сайта, для украшения к Новогодним и Рождественским праздникам.
В настройках все включается и отключается, для форума, портала и ресурсов.
Скриншоты



Скачать


Как установить? При установке хука не чего не происходит.

Цитата(4esTer_007 @ 23.11.2014, 12:46) *
Еще один плагин с подарками
спс ExTPuMaJI, за то, что дал название :) тык


У кого есть рабочая версия этого плагина?
Скачал архив а исходник с испорчиной кодоровкой.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nebo
сообщение 18.12.2014, 21:47
Сообщение #172


Стаж: 13 лет
Город: Казань

Сообщений: 3181
Благодарностей: 1015
Полезность: 701

qpi3ik, нормально там все
Прикрепленный файл  next21_gifts.sma ( 19,65 килобайт ) Кол-во скачиваний: 8


или так
Код:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta_util>
#include <hamsandwich>
#include <fun>
#include <WPMGPrintChatColor>

#define PLUGIN "Gifts"
#define VERSION "0.8.1"
#define AUTHOR "Psycrow"

#define is_entity_player(%1) (1<=%1<=g_maxPlayers)
#define PRESENT_CLASSNAME "next21_gift"
#define pev_lifes pev_euser1

#define MODEL_PRESENT "models/next21_knife_v2/presents/presents.mdl"
#define MODEL_SKINS 3
#define MODEL_SUBMODELS 5

#define MAX_MONEY 16000 // Максимальное кол-во денег у игрока

#if cellbits == 32
#define OFFSET_CSMONEY 115
#else
#define OFFSET_CSMONEY 140
#endif

new
g_msgMoney,
g_infoTarget,
g_maxPlayers,
g_menuId = -1,
bool: g_registration,
g_totalGifts, //Кол-во загруженных подарков на карте
g_get_round_times[33], //Сколько раз игрок поднял подарков за раунд
g_get_game_times[33], //Сколько раз игрок поднял подарков за игру
g_disconnections, //Сколько игроков покинуло сервер
bool: g_have_speed[33], //Имеет ли игрок добавленную скорость
bool: g_have_gravity[33], //Имеет ли игрок добавленную гравитацию
bool: g_have_sw[33], //Имеет ли игрок заглушенные шаги
bool: g_save_cpl, //Изменения в расположении подарков
Float: g_massage_rate[33], //Ограничение оповещений о попытке собрать подарок ограниченному игроку

Array:g_gift_id, //Индексы подарков
Array:g_gift_x,
Array:g_gift_y,
Array:g_gift_z,
Array:g_plr_steamid,
Array:g_plr_times


public plugin_precache()
{
precache_model(MODEL_PRESENT)
}

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)

register_cvar("cv_gift_access","a") // Флаг доступа к меню
register_cvar("cv_gift_money_min","1000") // Минимальная награда за собрынный подарок
register_cvar("cv_gift_money_max","5000") // Максимальная награда за собрынный подарок
register_cvar("cv_gift_silent_walk","1") // Добавить ли в подарки бесшумный бег
register_cvar("cv_gift_gravitation","0.5") // Значение гравитации. 0.0 - убрать такой вид подарка
register_cvar("cv_gift_speed","300.0") // Значение скорости. 0.0 - убрать такой вид подарка
register_cvar("cv_gift_HE","2") // Сколько HE гранат можно получить в подарках. 0 - убрать такой вид подарка
register_cvar("cv_gift_health","50") // Сколько HP можно получить в подарках. 0 - убрать такой вид подарка
register_cvar("cv_gift_timerate","120.0") // Сколько секунд до появление подарка
register_cvar("cv_gift_get_times_round","3") // Сколько максимум можно собрать подарков за раундов. 0 - снимает ограничение
register_cvar("cv_gift_get_times_game","0") // Сколько максимум можно собрать подарков за игру (карту). 0 - снимает ограничение
register_cvar("cv_gift_lifes","0") // Сколько раз может появиться подарок в одном и том же месте (0 - неограниченно, 1 - после сбора больше не появляеться...)

register_clcmd("say /gift", "gift_menu")
register_clcmd("say_team /gift", "gift_menu" )
register_clcmd("say /gifts", "gift_menu" )
register_clcmd("say_team /gifts", "gift_menu" )

g_infoTarget = engfunc(EngFunc_AllocString, "info_target")
}

public plugin_cfg()
{
new map[32]
get_mapname(map, charsmax(map))
formatex(map, charsmax(map),"%s.ini",map)

new cfgDir[64], iDir, iFile[128]
get_configsdir(cfgDir, charsmax(cfgDir))
formatex(cfgDir, charsmax(cfgDir), "%s/next21_gifts", cfgDir)

iDir = open_dir(cfgDir, iFile, charsmax(iFile))

if(iDir)
{
while(next_file(iDir, iFile, charsmax(iFile)))
{
if (iFile[0] == '.')
continue

if(equal(map, iFile))
{
format(iFile, 128, "%s/%s", cfgDir, iFile)
get_gifts(iFile)
break
}
}
}
else server_print("[%s] Gifts was not loaded", PLUGIN)
}

public client_putinserver(id)
{
if(!g_registration) return

if(get_cvar_num("cv_gift_get_times_game"))
{
new steamId[32], arraySteamId[32]
get_user_authid(id, steamId, 31)

for(new i = 0; i < g_disconnections; i++)
{
ArrayGetString(g_plr_steamid, i, arraySteamId, 31)
if(equal(steamId, arraySteamId))
{
g_get_game_times[id] = ArrayGetCell(g_plr_times, i)
return
}
}
g_get_game_times[id] = 0
}
}

public client_disconnect(id)
{
if(!g_registration) return

if(get_cvar_num("cv_gift_get_times_game"))
{
new steamId[32], arraySteamId[32]
get_user_authid(id, steamId, 31)

for(new i = 0; i < g_disconnections; i++)
{
ArrayGetString(g_plr_steamid, i, arraySteamId, 31)
if(equal(steamId, arraySteamId))
{
ArraySetCell(g_plr_times, i, g_get_game_times[id])
return
}
}

ArrayPushString(g_plr_steamid, steamId)
ArrayPushCell(g_plr_times, g_get_game_times[id])
g_disconnections++
}
}

public fw_PlayerSpawn(id)
{
if(g_have_gravity[id])
{
set_user_gravity(id)
g_have_gravity[id] = false
}

if(g_have_sw[id])
{
set_user_footsteps(id, 0)
g_have_sw[id] = false
}

g_have_speed[id] = false
}

public CurWeapon(id)
{
if(g_have_speed[id])
set_user_maxspeed(id, get_cvar_float("cv_gift_speed"))
}

public fw_RoundStart()
{
for(new i = 1; i <= g_maxPlayers; i++)
g_get_round_times[i] = 0

new lifes = get_cvar_num("cv_gift_lifes")
if(lifes)
{
new ent
while((ent = fm_find_ent_by_class(ent, PRESENT_CLASSNAME)))
set_pev(ent, pev_lifes, lifes)
}
}

public fw_TouchGift(ent, id)
{
if(!is_entity_player(id))
return

if(g_massage_rate[id] > get_gametime() || !is_user_alive(id) || !pev_valid(ent))
return

static className[32]
pev(ent, pev_classname, className, 31)
if(!equal(className, PRESENT_CLASSNAME))
return

new times = get_cvar_num("cv_gift_get_times_round")
if(times && g_get_round_times[id] >= times)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы привысили лимит сбора подарков за раунд", PLUGIN)
g_massage_rate[id] = get_gametime() + 3.0
return
}

times = get_cvar_num("cv_gift_get_times_game")
if(times && g_get_game_times[id] >= times)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы привысили лимит сбора подарков за игру", PLUGIN)
g_massage_rate[id] = get_gametime() + 3.0
return
}

engfunc(EngFunc_SetModel, ent, MODEL_PRESENT)
set_pev(ent, pev_skin, random_num(0, MODEL_SKINS - 1))
set_pev(ent, pev_body, random_num(0, MODEL_SUBMODELS - 1))

hide_gift(ent)
give_gift(id)

if(get_cvar_num("cv_gift_get_times_game")) g_get_game_times[id]++
if(get_cvar_num("cv_gift_get_times_round")) g_get_round_times[id]++
if(get_cvar_num("cv_gift_lifes")) set_pev(ent, pev_lifes, pev(ent, pev_lifes) - 1)
}

public set_gift()
{
if(!g_totalGifts) return

new valid_gifts_count = 0
new ent, lifes_active = get_cvar_num("cv_gift_lifes")
while((ent = fm_find_ent_by_class(ent, PRESENT_CLASSNAME)))
{
if(pev(ent, pev_solid) != SOLID_NOT || (lifes_active && !pev(ent, pev_lifes)))
valid_gifts_count++
}

if(valid_gifts_count == g_totalGifts) return

new bool: check = false, id
while(check == false)
{
id = random_num(0, g_totalGifts - 1)
ent = ArrayGetCell(g_gift_id ,id)
if(pev(ent, pev_solid) == SOLID_NOT && (!lifes_active || pev(ent, pev_lifes)))
{
set_pev(ent, pev_solid, SOLID_TRIGGER)
unhide_gift(ent)
check = true
}
}
}

public gift_menu(id)
{
if(!is_user_access(id))
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tУ вас нет прав на эту функцию", PLUGIN)
return
}

new menu_name[90]
format(menu_name, 89, "\rРасстановка подарков^n\dТекущий подарок: %d", g_totalGifts + 1)

g_menuId = menu_create(menu_name, "menu_handler")

menu_additem(g_menuId, "\wУстановить Подарок", "1", 0)

if(!g_totalGifts)
{
menu_additem(g_menuId, "\dУдалить предыдущий Подарок", "2", 0)
menu_additem(g_menuId, "\dУдалить все Подарки", "3", 0)
}
else
{
menu_additem(g_menuId, "\wУдалить предыдущий Подарок", "2", 0)
menu_additem(g_menuId, "\wУдалить все Подарки", "3", 0)
}

if(!g_save_cpl)
menu_additem(g_menuId, "\dСохранить изменения", "4", 0)
else menu_additem(g_menuId, "\wСохранить изменения", "4", 0)

menu_setprop(g_menuId, MPROP_EXIT, MEXIT_ALL)
menu_setprop(g_menuId, MPROP_EXITNAME, "\yВыход")
menu_display(id, g_menuId, 0)

new keys
get_user_menu(id, g_menuId, keys)

for(new i = 0; i < g_totalGifts; i++)
unhide_gift(ArrayGetCell(g_gift_id, i))
}

public menu_handler(id, menu, item)
{
if(item == MENU_EXIT)
{
new ent
for(new i = 0; i < g_totalGifts; i++)
{
ent = ArrayGetCell(g_gift_id, i)
if(pev(ent, pev_solid) == SOLID_NOT) hide_gift(ent)
}

menu_destroy(menu)
return PLUGIN_HANDLED
}

switch(item)
{
case 0:
{
new Float:fOrigin[3]
fm_get_aim_origin(id, fOrigin)

if(create_gift(fOrigin))
g_save_cpl = true

menu_destroy(menu)
gift_menu(id)
}
case 1:
{
if(!g_totalGifts)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tНа карте нет Подарков", PLUGIN)
menu_destroy(menu)
gift_menu(id)
return PLUGIN_HANDLED
}

g_save_cpl = true
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tПодарок удален", PLUGIN)


g_totalGifts--
engfunc(EngFunc_RemoveEntity, ArrayGetCell(g_gift_id, g_totalGifts))
ArrayDeleteItem(g_gift_id, g_totalGifts)
ArrayDeleteItem(g_gift_x, g_totalGifts)
ArrayDeleteItem(g_gift_y, g_totalGifts)
ArrayDeleteItem(g_gift_z, g_totalGifts)

menu_destroy(menu)
gift_menu(id)
}
case 2:
{
if(!g_totalGifts)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tНа карте нет Подарков", PLUGIN)
menu_destroy(menu)
gift_menu(id)
return PLUGIN_HANDLED
}

g_save_cpl = true
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tБыло удалено !g%d !tПодарков", PLUGIN, g_totalGifts)

new ent
while((ent = fm_find_ent_by_class(ent, PRESENT_CLASSNAME)))
engfunc(EngFunc_RemoveEntity, ent)

g_totalGifts = 0

ArrayClear(g_gift_id)
ArrayClear(g_gift_x)
ArrayClear(g_gift_y)
ArrayClear(g_gift_z)

menu_destroy(menu)
gift_menu(id)

}
case 3:
{
if(!g_save_cpl)
{
menu_destroy(menu)
gift_menu(id)
return PLUGIN_HANDLED
}

g_save_cpl = false

PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !t%s", PLUGIN, save_gifts() ? "Сохранено" : "Не сохранено")

menu_destroy(menu)
gift_menu(id)
}
}
return PLUGIN_HANDLED
}

bool: save_gifts()
{
new map[32]
get_mapname(map, charsmax(map))
formatex(map, charsmax(map), "%s.ini", map)

new cfgDir[64], iFile[128]
get_configsdir(cfgDir, charsmax(cfgDir))
formatex(cfgDir, charsmax(cfgDir), "%s/next21_gifts", cfgDir)
formatex(iFile, charsmax(iFile), "%s/%s", cfgDir, map)

if(!dir_exists(cfgDir))
if(!mkdir(cfgDir))
return false

delete_file(iFile)

if(!g_totalGifts)
return true

for(new i = 0; i < g_totalGifts; i++)
{
new text[128], Float:fOrigin[3], ent = ArrayGetCell(g_gift_id, i)
pev(ent, pev_origin, fOrigin)
format(text, charsmax(text),"^"%f^" ^"%f^" ^"%f^"",fOrigin[0], fOrigin[1], fOrigin[2])
write_file(iFile, text, i)
}

return true
}

get_gifts(const iFile[128])
{
new file = fopen(iFile, "rt")

if(!file)
{
server_print("[%s] Gifts was not loaded", PLUGIN)
return
}

while(file && !feof(file))
{
new sfLineData[512]
fgets(file, sfLineData, charsmax(sfLineData))

if(sfLineData[0] == ';')
continue

if(equal(sfLineData, ""))
continue

new origins[3][32], Float: fOrigin[3]
parse(sfLineData, origins[0], 31, origins[1], 31, origins[2], 31)

fOrigin[0] = str_to_float(origins[0])
fOrigin[1] = str_to_float(origins[1])
fOrigin[2] = str_to_float(origins[2])

create_gift(fOrigin)
}

fclose(file)

if(!g_totalGifts)
server_print("[%s] Gifts was not loaded", PLUGIN)
else if(g_totalGifts == 1)
server_print("[%s] Loaded one gift", PLUGIN)
else
server_print("[%s] Loaded %d gifts", PLUGIN, g_totalGifts)
}

bool: create_gift(const Float: fOrigin[3])
{
new ent = engfunc(EngFunc_CreateNamedEntity, g_infoTarget)
if(!pev_valid(ent)) return false

if(!g_registration)
{
register_event("CurWeapon", "CurWeapon", "be","1=1")
register_event("HLTV", "fw_RoundStart", "a", "1=0", "2=0")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn", 1)
RegisterHamFromEntity(Ham_Touch, ent, "fw_TouchGift")

set_task(get_cvar_float("cv_gift_timerate"), "set_gift", _, _, _, "b")

g_gift_id = ArrayCreate()
g_gift_x = ArrayCreate()
g_gift_y = ArrayCreate()
g_gift_z = ArrayCreate()

if(get_cvar_num("cv_gift_get_times_game"))
{
g_plr_steamid = ArrayCreate(32)
g_plr_times = ArrayCreate(32)
}

g_maxPlayers = get_maxplayers()
g_msgMoney = get_user_msgid("Money")

g_registration = true

fw_RoundStart()
}

ArrayPushCell(g_gift_id, ent)

ArrayPushCell(g_gift_x, fOrigin[0])
ArrayPushCell(g_gift_y, fOrigin[1])
ArrayPushCell(g_gift_z, fOrigin[2])

engfunc(EngFunc_SetModel, ent, MODEL_PRESENT)
set_pev(ent, pev_origin, fOrigin)
set_pev(ent, pev_solid, SOLID_NOT)
set_pev(ent, pev_movetype, MOVETYPE_FLY)
set_pev(ent, pev_gravity, 1.0)
set_pev(ent, pev_classname, PRESENT_CLASSNAME)
set_pev(ent, pev_skin, random_num(0, MODEL_SKINS - 1))
set_pev(ent, pev_body, random_num(0, MODEL_SUBMODELS - 1))
engfunc(EngFunc_SetSize, ent, Float:{-15.0, -15.0, 0.0}, Float:{15.0, 15.0, 30.0})

hide_gift(ent)

g_totalGifts++

return true
}

hide_gift(ent)
{
set_pev(ent, pev_solid, SOLID_NOT)
for(new i = 1; i <= g_maxPlayers; i++)
{
new mid, keys
get_user_menu(i, mid, keys)
if(mid == g_menuId)
{
fm_set_rendering(ent, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 150)
return
}
}
fm_set_rendering(ent, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0)
}

unhide_gift(ent)
{
if(pev(ent, pev_solid) == SOLID_NOT)
fm_set_rendering(ent, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 150)
else
fm_set_rendering(ent, kRenderFxGlowShell, random_num(0,255), random_num(0,255), random_num(0,255), kRenderNormal, 15)
}

give_gift(id) //Выдает случайный бонус с подарка. Добавьте case, если хотите доавить свой.
{
static loopDestroy
loopDestroy++

if(loopDestroy > 20)
{
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tПодарок оказался пустым", PLUGIN)
loopDestroy = 0
return
}

new max_random_gift = 6//Сколько видов бонусов в подарках
switch(random_num(1, max_random_gift))
{
case 1:
{
new reward = random_num(get_cvar_num("cv_gift_money_min"), get_cvar_num("cv_gift_money_max"))
new curr_money = get_pdata_int(id, OFFSET_CSMONEY)
if(curr_money + reward > MAX_MONEY)
reward = MAX_MONEY - curr_money

if(reward)
{
set_pdata_int(id, OFFSET_CSMONEY, curr_money + reward)

message_begin(MSG_ONE, g_msgMoney, _, id)
write_long(curr_money + reward)
write_byte(1)
message_end()

PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !g%d$", PLUGIN, reward)
loopDestroy = 0
}
else give_gift(id)
}

case 2:
{
if(!g_have_sw[id] && !get_user_footsteps(id) && get_cvar_num("cv_gift_silent_walk"))
{
g_have_sw[id] = true
set_user_footsteps(id)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gбесшумный бег", PLUGIN)
loopDestroy = 0
}
else give_gift(id)
}

case 3:
{
new Float: gravity = get_cvar_float("cv_gift_gravitation")
if(!g_have_gravity[id] && get_user_gravity(id) > gravity && gravity)
{
g_have_gravity[id] = true
set_user_gravity(id, gravity)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gгравитацию", PLUGIN)
loopDestroy = 0
}
else give_gift(id)
}

case 4:
{
new Float: speed = get_cvar_float("cv_gift_speed")
if(!g_have_speed[id] && get_user_maxspeed(id) < speed && speed)
{
g_have_speed[id] = true
set_user_maxspeed(id, speed)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gскорость", PLUGIN)
loopDestroy = 0
}
else give_gift(id)
}

case 5:
{
new hes = get_cvar_num("cv_gift_HE")
if(hes)
{
if(!user_has_weapon(id, CSW_HEGRENADE))
{
fm_give_item(id, "weapon_hegrenade")
cs_set_user_bpammo(id, CSW_HEGRENADE, hes)
}
else cs_set_user_bpammo(id, CSW_HEGRENADE, cs_get_user_bpammo(id, CSW_HEGRENADE) + hes)

PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gкомплект гранат (%d HE)", PLUGIN, hes)
loopDestroy = 0
}
else give_gift(id)
}

case 6:
{
new hp = get_cvar_num("cv_gift_health")
if(hp)
{
fm_set_user_health(id, pev(id, pev_health) + hp)
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы получаете !gздоровье (%d hp)", PLUGIN, hp)
loopDestroy = 0
}
else give_gift(id)
}
//case 7: тут по примерам выше
}
}

bool: is_user_access(id)
{
new flag_access[24]
get_cvar_string("cv_gift_access", flag_access, charsmax(flag_access))

new flags = get_user_flags(id)

if(contain(flag_access, "a") > -1 && (flags & ADMIN_IMMUNITY))
return true

if(contain(flag_access, "b") > -1 && (flags & ADMIN_RESERVATION))
return true

if(contain(flag_access, "c") > -1 && (flags & ADMIN_KICK))
return true

if(contain(flag_access, "d") > -1 && (flags & ADMIN_BAN))
return true

if(contain(flag_access, "e") > -1 && (flags & ADMIN_SLAY))
return true

if(contain(flag_access, "f") > -1 && (flags & ADMIN_MAP))
return true

if(contain(flag_access, "g") > -1 && (flags & ADMIN_CVAR))
return true

if(contain(flag_access, "h") > -1 && (flags & ADMIN_CFG))
return true

if(contain(flag_access, "i") > -1 && (flags & ADMIN_CHAT))
return true

if(contain(flag_access, "j") > -1 && (flags & ADMIN_VOTE))
return true

if(contain(flag_access, "k") > -1 && (flags & ADMIN_PASSWORD))
return true

if(contain(flag_access, "l") > -1 && (flags & ADMIN_RCON))
return true

if(contain(flag_access, "m") > -1 && (flags & ADMIN_LEVEL_A))
return true

if(contain(flag_access, "n") > -1 && (flags & ADMIN_LEVEL_B))
return true

if(contain(flag_access, "o") > -1 && (flags & ADMIN_LEVEL_C))
return true

if(contain(flag_access, "p") > -1 && (flags & ADMIN_LEVEL_D))
return true

if(contain(flag_access, "q") > -1 && (flags & ADMIN_LEVEL_E))
return true

if(contain(flag_access, "r") > -1 && (flags & ADMIN_LEVEL_F))
return true

if(contain(flag_access, "s") > -1 && (flags & ADMIN_LEVEL_G))
return true

if(contain(flag_access, "t") > -1 && (flags & ADMIN_LEVEL_H))
return true

if(contain(flag_access, "u") > -1 && (flags & ADMIN_MENU))
return true

if(contain(flag_access, "y") > -1 && (flags & ADMIN_ADMIN))
return true

if(contain(flag_access, "z") > -1 && (flags & ADMIN_USER))
return true

return false
}


Отредактировал: Nebo, - 18.12.2014, 21:48
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 18.12.2014, 21:48
Сообщение #173


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(qpi3ik @ 18.12.2014, 22:39) *
Как установить? При установке хука не чего не происходит.



У кого есть рабочая версия этого плагина?
Скачал архив а исходник с испорчиной кодоровкой.


Плагин подарков gift который весь кривой
Половина кваров не работает, меню может вызвать любой игрок, хотя стоит флаг L, квар времени тоже не работает, ставлю 5 сек а подарки раз в 25 сек появляются.
Сохранил подарки на 2ух картах но на одной они сохранились а на другой нет. Хотя оба файла есть в папке конфигз и координаты стоят, но на карте подарков нет

А как тебе такие строчьки?

Код:
PrintChatColor(id, PRINT_COLOR_PLAYERTEAM, "!g[%s] !tВы привысили лимит сбора подарков за раунд", PLUGIN)


Отредактировал: qpi3ik, - 18.12.2014, 21:49
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nebo
сообщение 18.12.2014, 21:51
Сообщение #174


Стаж: 13 лет
Город: Казань

Сообщений: 3181
Благодарностей: 1015
Полезность: 701

qpi3ik, точняк, сори :D
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 18.12.2014, 21:52
Сообщение #175


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Nebo @ 18.12.2014, 22:47) *
qpi3ik, точняк, сори :D


Есть что то подобное или есть рабочая версия?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя r1nk0
сообщение 20.12.2014, 22:04
Сообщение #176


Стаж: 12 лет

Сообщений: 1417
Благодарностей: 705
Полезность: 349

У кого есть шапки только для админов или випов? поделитесь плиз,я видел раньше на форуме выкладывали немогу найти.


Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя usercn
сообщение 20.12.2014, 23:42
Сообщение #177


Стаж: 12 лет

Сообщений: 341
Благодарностей: 140
Полезность: 495

https://c-s.net.ua/forum/topic69093.html
Здесь есть плагин, который заменяет С4 на снеговика.
Пригодится для НГ сервера


Просунутий сервер з максимумом зброї, можливо старійший в Україні
[UA] DNET CS Public Server #1
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя l3x1s
сообщение 21.12.2014, 8:20
Сообщение #178


Стаж: 17 лет

Сообщений: 495
Благодарностей: 300
Полезность: 543

r1nk0, жи есть тут

Дома буду, обновлю шапку.
Нарезал немного раундсаундов для себя, но игроки сказали что лишнее, выложу вам и + некоторые плагины добавлю.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя l3x1s
сообщение 15.11.2015, 18:24
Сообщение #179


Стаж: 17 лет

Сообщений: 495
Благодарностей: 300
Полезность: 543

Думаю пора UP-ать тему.
Ну что? Какие у нас изменения произошли за год? Появилось ли что-то новенькое/интересное на этот НГ? Предлагаю так же активно участвовать в теме, создавать или заказывать новые плагины, чтобы радовать своих любимых игроков в этот НГ.

Пользователь Vaqtincha написал немного измененный плагин шапок и саму модель шапки в этой теме (добавил в первый пост).

Поехали-и-и-и...

Отредактировал: l3x1s, - 15.11.2015, 18:25
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 15.11.2015, 18:34
Сообщение #180


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

l3x1s, вроде нет в шапке Snowball (0.6 alpha)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
16 страниц V  « 8 9 10 ... 14 15 »
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: