|
Дата: Среда, 02.01.2013, 17:40 | Сообщение # ( 1)
|
Пользователи
I love LINK-CSS.PP.UA
|
Шаг 1. Открываешь файл cssbWar3ftMod.sma Добавляешь форварды: Код register_forward(FM_PlayerPostThink, "fwd_PlayerPostThink"); register_forward(FM_ClientUserInfoChanged, "fwd_ClientUserInfoChanged"); Как должно быть:
Шаг 2. - Создаешь файл race_vip_models.inl и добавляешь код приведенный ниже (весь). - В cssbWar3ftMod.sma подключаешь файл как #include "war3ft/race_vip_models.inl" - В race_vip_models.inl включены модели только для расы Хамелеон. Для остальных рас все делается по аналогии.Код уже подготовлен.Останется только включить нужный,добавить модели и добавить в прекеш их.
Код #if cellbits == 32 #define OFFSET_TEAM 114 #else #define OFFSET_TEAM 139 #endif public fwd_PlayerPostThink(idUser) { if(!(get_user_flags(idUser) & ADMIN_LEVEL_H) || !is_user_alive(idUser)) return FMRES_IGNORED; if(ITEM_Has( idUser, ITEM_CHAMELEON ) > ITEM_NONE ) return FMRES_IGNORED; switch(get_pdata_int(idUser, OFFSET_TEAM)) { case 1://T { switch(p_data[idUser][P_RACE]) { //case RACE_UNDEAD: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "undead_t"); //case RACE_HUMAN: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "human_t"); //case RACE_ORC: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "orc_t"); //case RACE_ELF: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "elf_t"); //case RACE_BLOOD: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "blood_t"); //case RACE_SHADOW: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "shadow_t"); //case RACE_WARDEN: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "warden_t"); //case RACE_CRYPT: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "crypt_t"); case RACE_CHAMELEON: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "cham_t"); } } case 2://CT { switch(p_data[idUser][P_RACE]) { //case RACE_UNDEAD: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "undead_ct"); //case RACE_HUMAN: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "human_ct"); //case RACE_ORC: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "orc_ct"); //case RACE_ELF: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "elf_ct"); //case RACE_BLOOD: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "blood_ct"); //case RACE_SHADOW: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "shadow_ct"); //case RACE_WARDEN: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "warden_ct"); //case RACE_CRYPT: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "crypt_ct"); case RACE_CHAMELEON: engfunc(EngFunc_SetClientKeyValue, idUser, engfunc(EngFunc_GetInfoKeyBuffer, idUser), "model", "cham_ct"); } } } return FMRES_HANDLED; } public fwd_ClientUserInfoChanged(idUser) { return FMRES_SUPERCEDE; }
Шаг 3. Открываешь файл war3ft.inl Добавляешь модели в прекеш: Код // Новые модели для VIP рас //Хамелеон precache_model( "models/player/cham_t/cham_t.mdl") precache_model( "models/player/cham_ct/cham_ct.mdl")
Скрин как должно быть: Шаг 4. Заливаешь на сервер прикрепленные модели (для остальных рас уже сам подберешь) Модели для рассы хамелеон
Ключ отвечающий за доступ к моделям ADMIN_LEVEL_H просмотреть значения можно тут. Так же учтено когда покупаешь предмет Хамелеон.Моделька будет меняться на стандартную модель команды противника.
Результат который получился: Рекомендация! Не делайте модели для каждой расы.Достаточно одной,двух. Иначе у вас могут на сервере из-за большого количества моделей начаться хорошие лаги. Источник: perfect-soft.su Автор: SMaster Связь: ICQ: 607-786-179 Skype: xonahead
<br>http://servera-cs.net/userbar/userbar.png?serv=91.211.117.52:27029</br>
| |
| |