[ZP] ??? ??????? ????????? ?????? ????????
??? ??????? ????????? ?????? ????????

? ?????? ?????? ? ??? ???????? ??? ????? ??????? ????????? ?????? ?????? ????? ???????? ???????????? ????? ?????, ???-?? ?????????? ???????

????? ??????: Mort3m
??????, ???? ??????? ?????? ? ?? ???, ?? ??? ??? ??? ??????? ????, ???? ??? ????????

? ?????? ?????? ? ??? ???????? ??? ????? ???????? ??????????? ( ????????? ) ?????? ???????.
?????? ?????? ??? ????? ?????? ????? ???, ??? ?? ???, ????? ??????? ???, ??? ? ????? ? ???? ?????.
? ???, ??? ?????? ??? ????? Zombie Plague Fix5a. ?????? ??? ? ???? ????? ???? ????? ?? ????????? ????????? ??????.

???? ??????? ????? ? ??? ?? ???? ????, ????? ??????? Zombie Plague.

????????! ????????? ???? ?????? ?????? ? ???, ??? ???????? ????? ?? ????????? ????????? ??????. ?.? ??? ???, ? ???? ??? Fix5a.
?????????.

1. ????????? ???????? ????.

2. ???? ??????
public plugin_natives()

3. ???? ????????? ????? ??? ?????????? ??????. ???? ?????, ???? ?? ?? ?????? ????????? ??? ?????.
????? ? ??? ???? ?????? ????? ???????zp_force_buy_extra_item
????????? ??????:
register_native("zp_override_user_model", "native_override_user_model", 1);

?????? ?????????? ???:
4. ?????? ??? ???? ???????? ???? ??????? ????????? ????????? ??????.
?????????? ?? ??????:
/*================================================================================
 [Custom Natives]
=================================================================================*/

? ? ????? ??????? ????? ????????? ???? ???? ????:
// Native: zp_override_user_model
public native_override_user_model(id, const newmodel[], modelindex)
{
????// ZP disabled
????if (!g_pluginenabled)
????????return false;
????
????if (!is_user_valid_connected(id))
????{
????????log_error(AMX_ERR_NATIVE, "[ZP] Invalid Player (%d)", id)
????????return false;
????}
????
????// Strings passed byref
????param_convert(2)
????
????// Remove previous tasks
????remove_task(id+TASK_MODEL)
????
????// Custom models stuff
????static currentmodel[32]
????
????if (g_handle_models_on_separate_ent)
????{
????????// Set the right model
????????copy(g_playermodel[id], charsmax(g_playermodel[]), newmodel)
????????if (g_set_modelindex_offset && modelindex) fm_cs_set_user_model_index(id, modelindex)
????????
????????// Set model on player model entity
????????fm_set_playermodel_ent(id)
????}
????else
????{
????????// Get current model for comparing it with the current one
????????fm_cs_get_user_model(id, currentmodel, charsmax(currentmodel))
????????
????????// Set the right model, after checking that we don't already have it
????????if (!equal(currentmodel, newmodel))
????????{
????????????copy(g_playermodel[id], charsmax(g_playermodel[]), newmodel)
????????????if (g_set_modelindex_offset && modelindex) fm_cs_set_user_model_index(id, modelindex)
????????????
????????????// An additional delay is offset at round start
????????????// since SVC_BAD is more likely to be triggered there
????????????if (g_newround)
????????????????set_task(5.0 * g_modelchange_delay, "fm_user_model_update", id+TASK_MODEL)
????????????else
????????????????fm_user_model_update(id+TASK_MODEL)
????????}
????}
????return true;
}

?????? ?????????? ???: ( ????? ???????? ????? ??? ???? ????????? )

???? ?? ??? ??????? ?????????, ?????????? ?????? ?????? ???????:

????????!?????????? ???? ?????? ?????? ??? ???? ?????????????, ??????? ??? ??????? Zombie Plague ??? ? Fix5a.
????, ???????? ? ?????????.
?????? ??? ???? ????? ???????? ????????? ??????, ??????????? ???? ?????? ???????. ??? ?????? ? ?????? ? ???? ??????.?

1. ??????? ???? ??????? .sma ? ????? ??????? ??? ?????????

2. ??????? ? ???? ????? ????????? ??????????.

3. ?????????? ??????? + ???????.
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <zombieplague>

// ???????
#define linux_diff_player 5
#define m_modelIndexPlayer 491

4. ????????? ????? + ????????? ??????? + ??????? ??????????.
?????! ????? ? ??????? ? ???? ?????? ?????? ???? ? ??????????? ??????????
// ??? ?????
native zp_override_user_model(pPlayer, szModel[], iModelIndex = 0);

#define MODEL_NAME "tommy" // ???????? ??????
#define MODEL_PATH "models/player/%s/%s.mdl" // ???????????? ???? ?? ???????.
#define MODEL_ACCESS_ADMIN ADMIN_BAN // ????????? ?????? ?????? ??????. ???????????????, ???? ?? ?????

// ??????? ?????????? ??? ???????? ? ??? ??????? ??????
new g_iszModelIndex;

5. ?????? ??? ???? ??????? ??? ????????. plugin_precache ? plugin_init
? ? ??? ???????????????? ?????? ??? ??????? ? ??????????? ??????? ( ?? ??????? )
// ?????? ??????
public plugin_precache()
{
????static szModelPath[128];
????formatex(szModelPath, charsmax(szModelPath), MODEL_PATH, MODEL_NAME, MODEL_NAME);
    // ??????????? ?????? ?????? ??????????
    g_iszModelIndex = engfunc(EngFunc_PrecacheModel, szModelPath);
}

// ??????????? ?????? ??? ??????? ( register_plugin ?? ??????? )
public plugin_init()
{
????// ???????????? ??????
????register_plugin("[AMXX] Custom Model", "0.0.1", "m0rt3m/??? ????? ???? ??? ???");

????// ????? ????? ?????? ??????
????RegisterHam(Ham_Spawn, "player", "HamHook__PlayerSpawn_Post", 1);
}

6. ?????? ??? ???????? ??????? ????????? ??????? ? ??????? ??????? ????? ????? ???????????? ? ????????.
public HamHook__PlayerSpawn_Post(iPlayer)
{
????// ????????? ?? ???????
????if(!is_user_connected(iPlayer))
????????return;

????// ????????? ?? ????? ? ?????????
????if(zp_get_user_zombie(iPlayer) || zp_get_user_survivor(iPlayer))
????????return;

????// ????????? ?? ??????? ?????, ???? ?????? ?? ???????????????
????#if defined MODEL_ACCESS_ADMIN
????????if(~get_user_flags(iPlayer) & MODEL_ACCESS_ADMIN)
????????????return;
????#endif

    // ?????????? ??????
    zp_override_user_model(iPlayer, MODEL_NAME, g_iszModelIndex);

    // ?????????? ?????? ?????? ??????, ????? ?? ??????
    set_pdata_int(iPlayer, m_modelIndexPlayer, g_iszModelIndex, linux_diff_player);
}

public zp_user_humanized_post(iPlayer, iSurvivor)
{
????// ????????? ?? ?????????
????if(iSurvivor)
????????return;

????// ????????? ?? ??????? ?????, ???? ?????? ?? ???????????????
????#if defined MODEL_ACCESS_ADMIN
????????if(~get_user_flags(iPlayer) & MODEL_ACCESS_ADMIN)
????????????return;
????#endif

    // ?????????? ??????
    zp_override_user_model(iPlayer, MODEL_NAME, g_iszModelIndex);

    // ?????????? ?????? ?????? ??????, ????? ?? ??????
    set_pdata_int(iPlayer, m_modelIndexPlayer, g_iszModelIndex, linux_diff_player);
}

??? ? ????? ??? ??????. ?????? ??? ?? ??????, ? ???????????? ??????.
?????? ????? ??????? ?? ???, ? ??????? ??????????? ??????? ?? ??? ? ?.?, ??????????, ???? ?? ?????? ? ?????, ??? ??? ??? ?? ????? ?????? ?????????.

У вас нет доступа к скачиванию файлов с нашего сервера


Привет, наша адмнистрация публикует только пушечный контент, поставь лайк под постом ниже и напишите самый топовый комментарий, мы готовим материал только для тебя, любимый Гость.

Пожертвовать Вы можете сделать автору Mort3m, подарок в виде пожертвования на его электронную копилку ;)




Комментариев 4
  1. xUnicorn
    • 23 декабря 2018 20:48
    1. Universe
      ? ????? ??????77???7?

      Why i'm not from Ukraine?
      -------------------------------------------------------------------------------------------------------------------------
      ?????? VK: vk.com/forumbz
      • 26 декабря 2018 21:04
  2. ipman11223
    ? ??? ??????? ??? , ??? ?? ???? ??? ?????????? : ??? , ????? ? ???? ?

    • 24 августа 2019 13:06
    1. Mort3m
      Mort3m
      • 0
      ????? ??????? ???????:
      ???????????? ?????? ?? ??????, ???
      • 24 августа 2019 13:10
Информация
Посетители, находящиеся в группе ?????, не могут оставлять комментарии к данной публикации.


Наши партнеры
Основа для вашей сборки
ReHLDS 3.4.0.654

ReHLDS (Reverse-engineered) - это новый шаг вперед, который дает второе дыхание нашим серверам. ReHLDS работает в 2 раза быстрей, чем HLDS.

AmxModx 1.8.3

AMXModX - это Metamod дополнение, которое позволяет создавать новые модификации для Half-Life на языке Pawn

Reunion 0.1.92

Reunion является продолжением Dproto для ReHLDS. Это metamod плагин, который позволяет заходить 47/48 Non-Steam на сервер.

Revoice 0.1.0.32

Revoice - это Metamod plugin, который дает возможность общения голосовым чатом между non-steam и steam клиентами.

Metamod-r 1.3.0.127

Новый Metamod-r содержит огромное количество оптимизаций производительности и намного более чистый код. Ядро было написано с использованием JIT-компилятора.

Ultimate Unprecacher 1.1

Ultimate Unprecacher являет плагином для MetaMod, работает он по принципу отключение не нужных ресурсов на вашем сервере, тем самым вы сможете освободить места для ресурсов под ваши плагины, с помощью данного модуля можно избавиться от ошибки 512!

ReAuthCheck 0.1.6

ReAuthCheck - это Metamod плагин, который занимается проверкой ваших игроков на валидность, с помощью данного модуля для REHLDS вы сможете защитить свой сервер от ботов, которые постоянно спамят рекламу или просто забивают слот на сервере!

NetBufExtender (NBEX) 1.0

NetBufExtender или NBEX - это метамод-плагин, который расширяет "интернет-буфер": буферы сервера и клиента(гарантия не 100%). Расширяет до 64 кб. Это значит, что у игроков уменьшается вероятность быть кикнутыми с ошибкой "Reliable channel overflowed".

UserInfoNetOptimizer (UINO) 1.0

UINO — metamod-плагин, который позволяет удалять ненужные поля из userinfo(setinfo) когда движок передаёт его другим игрокам на сервере. Данная мера уменьшает объём передаваемых данных и немного сокращает шанс быть кикнутым с "Reliable channel overflowed".

Информация

Добро пожаловать на WORLD-CS.RU!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт