• Страница 1 из 1
  • 1
Форум » Counter-Strike 1.6 » Сервер Counter-Strike 1.6 » Помощь по скриптингу » АВП на флаг помощь.
АВП на флаг помощь.
Дата: Вторник, 23.10.2018, 17:13 | Сообщение # 1
Смотрящий
Мастер
Offline
  • M0Nk
  • Репутация: 7
  • Сообщений:143
  • Корректор
  • Статус пользователя www.masofke.eu - Lithuanian
    Gaming community 24/7.
Здравствуйте помогите добавить ешё одну модель авп на другой флаг сейчяс в плагине стоит одна модель авп на один флаг нужно 2 модели на 2 разных флага :)


Код
#include<amxmodx>
#include<engine>
#include<fakemeta>
#include<hamsandwich>

#define PLUGIN   "PrizeAwp"
#define VERSION   "0.1"
#define AUTHOR   "Demonx"

/*---------------EDITME------------------*/
#define ACCESS_FLAG   ADMIN_LEVEL_H   //flag't'bydefault
#define CUSTOM_DMG      2.0            //customknifedamage;fractionalpartofanumberismandatory

new WORLD_MODEL[]   = "models/msfkflgawp/w_awp.mdl"

new const gszawpModelV[] = "models/msfkflgawp/v_awp.mdl"   //1stpersonviewmodel
new const gszawpModelP[] = "models/msfkflgawp/p_awp.mdl"   //3rdpersonviewmodel
/*----------------------------------------*/

new giszawpModelV,giszawpModelP

//macro;%1-variablebeingmodified,%2-playerid
#define CheckFlag(%1,%2)   (%1 & (1<<(%2&31)))
#define SetFlag(%1,%2)      (%1 |= (1<<(%2&31)))
#define ClearFlag(%1,%2)   (%1 &= ~(1<<(%2&31)))
new gbCustomawpDamage

#define IsPlayer(%0)   (1<=(%0)<=giMaxPlayers)

new giMaxPlayers

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

   RegisterHam(Ham_Item_Deploy,"weapon_awp","Fwd_ItemDeploy_awp_Post",.Post=1)
   RegisterHam(Ham_TakeDamage,"player","Fwd_TakeDamage")
   register_forward(FM_SetModel,"fw_SetModel")

   giszawpModelV = engfunc(EngFunc_AllocString,gszawpModelV)
   giszawpModelP = engfunc(EngFunc_AllocString,gszawpModelP)

   giMaxPlayers = get_maxplayers()
}

public plugin_precache(){
   precache_model(gszawpModelV)
   precache_model(gszawpModelP)
   precache_model(WORLD_MODEL)
}

public client_putinserver(id)
{
   ( get_user_flags(id) & ACCESS_FLAG ) ? SetFlag( gbCustomawpDamage , id ) : ClearFlag( gbCustomawpDamage , id )
}

public Fwd_ItemDeploy_awp_Post(ent){
   const XO_WEAPON = 4   //'XO'meansextraoffset
   const m_pPlayer = 41

   new iPlayer=get_pdata_cbase(ent,m_pPlayer,XO_WEAPON)

   if(CheckFlag(gbCustomawpDamage,iPlayer))
   {
      set_pev_string(iPlayer,pev_viewmodel2,giszawpModelV)
      set_pev_string(iPlayer,pev_weaponmodel2,giszawpModelP)
   }
}
public fw_SetModel(entity,model[])
{
   //Проверяемсуществуетлиобъект
   if(!is_valid_ent(entity) || !equal(model, "models/w_awp.mdl") )
      return FMRES_IGNORED

   new id = pev( entity, pev_owner );
   //Проверяемталиэтоw_модель,которуюмухотимизменить
   if( !CheckFlag( gbCustomawpDamage ,id) )
      return FMRES_IGNORED

   new szClassName[33]

   //Получаемклассобъекта
   pev( entity, pev_classname, szClassName, charsmax(szClassName) );

   //Сравниваемравняетсялиполученныйклассобъектаweaponbox(выкинутоеоружие)илиarmoury_entity(оружие,котороележитнакарте),илиgrenade(C4игранаты)
   if( equal(szClassName,"weaponbox") )
   {
      //Установкаw_модели,котораяотображаетсяназемле
      engfunc( EngFunc_SetModel, entity, WORLD_MODEL );
      return FMRES_SUPERCEDE
   }

   return FMRES_IGNORED
}

public Fwd_TakeDamage(victim,inflictor,attacker,Float:damage,damagebits)
{
   if( IsPlayer( attacker ) && attacker == inflictor && CheckFlag(gbCustomawpDamage,attacker) && get_user_weapon(attacker) == CSW_AWP )
   {
      SetHamParamFloat(4, damage * CUSTOM_DMG)
      return HAM_HANDLED
   }

   return HAM_IGNORED
}
Дата: Воскресенье, 28.10.2018, 16:08 | Сообщение # 2
Дух ( Новичок )
Offline
  • simplyDavchik
  • Репутация: 13
  • Сообщений:5
  • Пользователь
Это форум помощи, а не форум "Сделайте всю работу за меня",
хватит уже такие посты пилить, ты хоть сам попробуй сделать и покажи что ты пытался и у тебя не получилось, чем просто проси готовый результат.
Дата: Воскресенье, 28.10.2018, 16:27 | Сообщение # 3
Ветеран сайта
Профи
Offline
  • eXcLuZiv
  • Репутация: 56
  • Сообщений:157
  • VIP
  • Статус пользователя 99% ошибок компиляции плагина сидит в полуметре от монитора.
бери плагин вот этот и все , не тупи человек!!!!!!!!!!!!!!!!!!!



Добавлено (28.10.2018, 16:29)
---------------------------------------------
simplyDavchik,  если тебе впадлу помочь , то зачем ты пишешь тут ? у тебя если есть время написать тут комментарий , значит есть время помочь!
Если ты не хочешь помогать .тогда и не пиши тут !

Дата: Воскресенье, 28.10.2018, 16:43 | Сообщение # 4
Легенда сайта
Эксперт
Offline
  • Maxee
  • Репутация: 76
  • Сообщений:457
  • Главный редактор
  • Статус пользователя Запомните, всегда по жизни вас будут красить вежливость и спокойствие, а не наезды и дешевые понты [img]/sml/170.gif[/img]
Цитата simplyDavchik ()
Это форум помощи, а не форум "Сделайте всю работу за меня",хватит уже такие посты пилить, ты хоть сам попробуй сделать и покажи что ты пытался и у тебя не получилось, чем просто проси готовый результат.
В том, что и дело на форуме помогают , кто не ленивая жопа может и сделать работу за других. Это не сложно.
Дата: Воскресенье, 28.10.2018, 17:26 | Сообщение # 5
Смотрящий
Мастер
Offline
  • M0Nk
  • Репутация: 7
  • Сообщений:143
  • Корректор
  • Статус пользователя www.masofke.eu - Lithuanian
    Gaming community 24/7.
Да не хотелось бы ставить ради 2 скинов плагин replace models )) кто захочет тот поможет никого не заставляют :P
Дата: Воскресенье, 28.10.2018, 17:28 | Сообщение # 6
Ветеран сайта
Профи
Offline
  • eXcLuZiv
  • Репутация: 56
  • Сообщений:157
  • VIP
  • Статус пользователя 99% ошибок компиляции плагина сидит в полуметре от монитора.
M0Nk, ну как хочешь , мое дело предложить , а дальше сам решай!
Дата: Понедельник, 29.10.2018, 08:18 | Сообщение # 7
Дух ( Новичок )
Offline
  • Komap22
  • Репутация: 0
  • Сообщений:2
  • Пользователь
Скопируй из этого же плагина и подставь то что тебе надо,профит :D
Форум » Counter-Strike 1.6 » Сервер Counter-Strike 1.6 » Помощь по скриптингу » АВП на флаг помощь.
  • Страница 1 из 1
  • 1
Поиск:
(threadpage)