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

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

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

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

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

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

Как изменить плагин "Leader"

Статус пользователя Demon1ka
сообщение 19.1.2013, 19:17
Сообщение #1
Стаж: 13 лет

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

Как изменить плагин "Leader",чтобы он давался рандомно на 2 раунде,и кто его убивает,тот лидером и становится,а не тот кто на 1 месте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя midorfeed
сообщение 19.1.2013, 21:19
Сообщение #2
Стаж: 13 лет

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

Я конечно понимаю что это очень известный плагин, который должен быть установлен на каждом сервере, но может все-таки дадите исходник?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Demon1ka
сообщение 21.1.2013, 21:57
Сообщение #3
Стаж: 13 лет

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

Цитата(midorfeed @ 19.1.2013, 23:19) *
Я конечно понимаю что это очень известный плагин, который должен быть установлен на каждом сервере, но может все-таки дадите исходник?



Вот исходник

http://rghost.ru/43217090

Отредактировал: Demon1ka, - 21.1.2013, 21:58
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Nickk
сообщение 22.1.2013, 16:34
Сообщение #4
Стаж: 13 лет

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

Попробуй:

Скрытый текст
Код
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta_util>
#include <fun>
#include <hamsandwich>

new pHp, pRound, pRED, pGREEN, pBLUE
new CurRound, Leader
new bool:leader[33]

public plugin_init()
{
  register_plugin("Leader", "1.0", "Exta5y")

  register_event("ResetHUD", "eSpawn", "b")
  register_event("DeathMsg", "eDeath", "a")
  register_event("TextMsg", "eRestart", "a", "2=#Game_will_restart_in")
  RegisterHam(Ham_Killed,"player","player_kill")

  register_logevent("roundStart", 2, "1=Round_Start")

  pHp = register_cvar("leader_hp", "5")
  pRound = register_cvar("leader_round", "2")

  pRED = register_cvar("leader_glow_red", "0")
  pGREEN = register_cvar("leader_glow_green", "128")
  pBLUE = register_cvar("leader_glow_blue", "0")
  
  Leader = -1
  CurRound = 0
}

public player_kill(victim, attacker, corpse)
{
    if(leader[victim])
    {
        leader[victim] = false
        leader[attacker] = true
        do_glow(attacker)
        un_glow(victim)
    }
}
SearchLeader()
{
  new iPlayers[32], NumPlayers
  get_players(iPlayers, NumPlayers, "a")

  new LeaderFrags
  new LeaderDeaths
  new Frags
  new Deaths

  LeaderFrags = get_user_frags(iPlayers[0])
  LeaderDeaths = get_user_deaths(iPlayers[0])
  Leader = iPlayers[0]

  for(new i = 1; i < NumPlayers; i++)
  {
    Frags = get_user_frags(iPlayers[i])
    Deaths = get_user_deaths(iPlayers[i])
    if((Frags > LeaderFrags) || ((Frags == LeaderFrags) && (Deaths < LeaderDeaths)))
    {
      LeaderFrags = Frags
      LeaderDeaths = Deaths
      Leader = iPlayers[i] // id
    }
  }
  leader[Leader] = true
  if(Leader != -1)
    SetLeader(Leader)
  else
    un_glow(Leader)
}

SetLeader(id)
{
  new iPlayers[32], NumPlayers
  get_players(iPlayers, NumPlayers, "")
  give_item(id,"weapon_deagle")
  cs_set_user_bpammo(id,CSW_DEAGLE,35)
  give_item(id,"weapon_knife")
  give_item(id,"weapon_hegrenade")
  cs_set_user_bpammo(id,CSW_HEGRENADE,3)
  set_user_health(id,  100 + get_pcvar_num(pHp) * (NumPlayers-1))

  do_glow(id)

  if(get_user_team(id) == 1)
    set_hudmessage(255, 0, 0, 0.05, 0.2, 0, 6.0, 300.0)
  else
    set_hudmessage(0, 0, 255, 0.05, 0.2, 0, 6.0, 300.0)

  new name[32]
  get_user_name(id, name, 31)

  show_hudmessage(0, "%s Стал Лидером!", name)
}

public client_disconnect(id)
{
  if(id == Leader)
    Leader = -1
}

public eRestart()
{
  CurRound = 0
  Leader = -1
}

public roundStart()
{
  CurRound++
  if(CurRound <= get_pcvar_num(pRound) || Leader == -1)
    SearchLeader()
}

public eSpawn(id)
{
  if(Leader == id)
    SetLeader(id)
  else
    un_glow(id)
}

public eDeath()
{
  if(CurRound < get_pcvar_num(pRound))
    return PLUGIN_HANDLED

  new killer = read_data(1)
  new victim = read_data(2)
  
  if(victim != Leader)
    return PLUGIN_HANDLED

  if(!killer)
    return PLUGIN_HANDLED

  if(killer != victim && is_user_alive(killer) && get_user_team(killer) != get_user_team(victim))
  {
    Leader = killer
    SetLeader(killer)
  }

  return PLUGIN_HANDLED
}

public do_glow(id)
{
  new RED, GREEN, BLUE
  RED = get_pcvar_num(pRED)
  GREEN = get_pcvar_num(pGREEN)
  BLUE = get_pcvar_num(pBLUE)

  set_user_rendering(id,kRenderFxGlowShell, RED, GREEN, BLUE, kRenderNormal,25)
  return PLUGIN_HANDLED;
}

public un_glow(id)
{
  set_user_rendering(id,kRenderFxGlowShell,0,0,0,kRenderNormal,25)
  return PLUGIN_HANDLED;
}


Если не будет работать, напиши, что должно быть в этом плагине, я сам напишу, а то я в этом запутался.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Demon1ka
сообщение 22.1.2013, 21:53
Сообщение #5
Стаж: 13 лет

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

Цитата(Nickk @ 22.1.2013, 18:34) *
Попробуй:

Скрытый текст
Код
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta_util>
#include <fun>
#include <hamsandwich>

new pHp, pRound, pRED, pGREEN, pBLUE
new CurRound, Leader
new bool:leader[33]

public plugin_init()
{
  register_plugin("Leader", "1.0", "Exta5y")

  register_event("ResetHUD", "eSpawn", "b")
  register_event("DeathMsg", "eDeath", "a")
  register_event("TextMsg", "eRestart", "a", "2=#Game_will_restart_in")
  RegisterHam(Ham_Killed,"player","player_kill")

  register_logevent("roundStart", 2, "1=Round_Start")

  pHp = register_cvar("leader_hp", "5")
  pRound = register_cvar("leader_round", "2")

  pRED = register_cvar("leader_glow_red", "0")
  pGREEN = register_cvar("leader_glow_green", "128")
  pBLUE = register_cvar("leader_glow_blue", "0")
  
  Leader = -1
  CurRound = 0
}

public player_kill(victim, attacker, corpse)
{
    if(leader[victim])
    {
        leader[victim] = false
        leader[attacker] = true
        do_glow(attacker)
        un_glow(victim)
    }
}
SearchLeader()
{
  new iPlayers[32], NumPlayers
  get_players(iPlayers, NumPlayers, "a")

  new LeaderFrags
  new LeaderDeaths
  new Frags
  new Deaths

  LeaderFrags = get_user_frags(iPlayers[0])
  LeaderDeaths = get_user_deaths(iPlayers[0])
  Leader = iPlayers[0]

  for(new i = 1; i < NumPlayers; i++)
  {
    Frags = get_user_frags(iPlayers[i])
    Deaths = get_user_deaths(iPlayers[i])
    if((Frags > LeaderFrags) || ((Frags == LeaderFrags) && (Deaths < LeaderDeaths)))
    {
      LeaderFrags = Frags
      LeaderDeaths = Deaths
      Leader = iPlayers[i] // id
    }
  }
  leader[Leader] = true
  if(Leader != -1)
    SetLeader(Leader)
  else
    un_glow(Leader)
}

SetLeader(id)
{
  new iPlayers[32], NumPlayers
  get_players(iPlayers, NumPlayers, "")
  give_item(id,"weapon_deagle")
  cs_set_user_bpammo(id,CSW_DEAGLE,35)
  give_item(id,"weapon_knife")
  give_item(id,"weapon_hegrenade")
  cs_set_user_bpammo(id,CSW_HEGRENADE,3)
  set_user_health(id,  100 + get_pcvar_num(pHp) * (NumPlayers-1))

  do_glow(id)

  if(get_user_team(id) == 1)
    set_hudmessage(255, 0, 0, 0.05, 0.2, 0, 6.0, 300.0)
  else
    set_hudmessage(0, 0, 255, 0.05, 0.2, 0, 6.0, 300.0)

  new name[32]
  get_user_name(id, name, 31)

  show_hudmessage(0, "%s Стал Лидером!", name)
}

public client_disconnect(id)
{
  if(id == Leader)
    Leader = -1
}

public eRestart()
{
  CurRound = 0
  Leader = -1
}

public roundStart()
{
  CurRound++
  if(CurRound <= get_pcvar_num(pRound) || Leader == -1)
    SearchLeader()
}

public eSpawn(id)
{
  if(Leader == id)
    SetLeader(id)
  else
    un_glow(id)
}

public eDeath()
{
  if(CurRound < get_pcvar_num(pRound))
    return PLUGIN_HANDLED

  new killer = read_data(1)
  new victim = read_data(2)
  
  if(victim != Leader)
    return PLUGIN_HANDLED

  if(!killer)
    return PLUGIN_HANDLED

  if(killer != victim && is_user_alive(killer) && get_user_team(killer) != get_user_team(victim))
  {
    Leader = killer
    SetLeader(killer)
  }

  return PLUGIN_HANDLED
}

public do_glow(id)
{
  new RED, GREEN, BLUE
  RED = get_pcvar_num(pRED)
  GREEN = get_pcvar_num(pGREEN)
  BLUE = get_pcvar_num(pBLUE)

  set_user_rendering(id,kRenderFxGlowShell, RED, GREEN, BLUE, kRenderNormal,25)
  return PLUGIN_HANDLED;
}

public un_glow(id)
{
  set_user_rendering(id,kRenderFxGlowShell,0,0,0,kRenderNormal,25)
  return PLUGIN_HANDLED;
}


Если не будет работать, напиши, что должно быть в этом плагине, я сам напишу, а то я в этом запутался.



не работает!

Ну вот Слушай

После 2 раунда выбирает игрока по убийству и по смертей выбирает Лидера кто его убьет станет лидером при каждому подключения игрока додается Лидеру 5 хп и он поцвету Зельоный Влево углу посередине пишет кто стал лидером

Ну вот вроде так
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Scorp1985
сообщение 23.1.2013, 10:01
Сообщение #6
Стаж: 13 лет

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

На 1 Форуме,мне ответили так:
При убийстве "этого лидера" выдавай setleader или как у тебя.
примерно будет так.
Leader = victim

Killer = Attacker(killer)
Если это условие соблюдено,то setleader
ТОлько я не понел,как это правельно сделать!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Demon1ka
сообщение 23.1.2013, 21:46
Сообщение #7
Стаж: 13 лет

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

так кто то сможет сделать или ёсть у каво уже такой плагин то скиньте мне плизз
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: