Контакты Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 2
  • 1
  • 2
  • »
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Разноцветное окрашивание игрока
Разноцветное окрашивание игрока
daniil Дата: Четверг, 11.04.2013, 19:49:48 | Сообщение # 1
Сообщений: 100
Репутация: 0 [ +/- ]
Вот код разноцветной окраски игрока, как мне это вставить в spawn_protect.sp
Чтобы при спавне игрока, во время защиты он окрашивался в разные цвета, каждые полсекунды
Пробовал создавать таймер для цветов, repeat чтобы менялся цвет, но что то не получается и лишние таймеры это плохая идея.
Код

#include <sourcemod>

public OnPluginStart()
{
  HookEvent("player_spawn", player_spawn);
}

public Action:player_spawn(Handle:event,const String:name[],bool:dontBroadcast)
{
  new client_id = GetEventInt(event, "userid");
  new client = GetClientOfUserId(client_id);
  new random = GetRandomInt(1, 3);
  if (random == 1)
  {
   SetEntityRenderColor(client, 0, 255, 0, 255);
  }
  else if(random == 2)
  {
   SetEntityRenderColor(client, 0, 0, 255, 255);
  }
  else if(random == 3)
  {
   SetEntityRenderColor(client, 255, 0, 0, 255);
  }
}

Прикрепления: spawn_protect.sp(1.5 Kb)
 
Scarface_slv Дата: Четверг, 11.04.2013, 20:58:00 | Сообщение # 2
Сообщений: 738
Репутация: 61 [ +/- ]
типо так попробуй хз норм пашет нет

Прикрепления: 0878777.sp(1.7 Kb)
 
Sunday Дата: Четверг, 11.04.2013, 21:29:20 | Сообщение # 3
Сообщений: 186
Репутация: 24 [ +/- ]
Лови ulibka

Добавлено (11.04.2013, 21:29:20)
---------------------------------------------
Scarface_slv чуть чуть меня опередил :)))

Прикрепления: asp_src.sp(1.7 Kb)


Сообщение отредактировал Sunday - Четверг, 11.04.2013, 21:31:26
 
daniil Дата: Пятница, 12.04.2013, 06:13:20 | Сообщение # 4
Сообщений: 100
Репутация: 0 [ +/- ]
Спасибо мужики klas Сейчас затестирую :)

Добавлено (12.04.2013, 06:13:20)
---------------------------------------------
Scarface_slv, Вроде то что надо! klas
Sunday, Код очень не понятный(для меня) нету бессмертия и игроки светятся бесконечно.
За старания оба ловите + :D

 
TEIN Дата: Пятница, 12.04.2013, 10:42:03 | Сообщение # 5
Сообщений: 568
Репутация: 78 [ +/- ]
Sunday, Не проще ли один таймер запустить?
 
Sunday Дата: Пятница, 12.04.2013, 11:34:48 | Сообщение # 6
Сообщений: 186
Репутация: 24 [ +/- ]
Цитата (DoK_1997)
Sunday, Не проще ли один таймер запустить?

Ой, точно, вчера просто по быстрому сделал, одна мысль в голове перебивала другую, смотря паралельна фильм))) Кстати, классный фильм "Стрелок", кто не видел, посмотрите). Спасибо Док, поправил.

Добавлено (12.04.2013, 11:34:48)
---------------------------------------------
Цитата (daniil)
Sunday, Код очень не понятный(для меня) нету бессмертия и игроки светятся бесконечно.
За старания оба ловите + :D

Тебе же вроде так и надо было? Когда игрок на респауне он меняет цвета каждые пол секунды, а как только игрок начинает движение, стрелять и т.п., то эффект пропадает... разве нет? А юессмертие что бы сделать, просто добавь: SetEntProp(client, Prop_Data, "m_takedamage", 0); в Event_EnableColor и SetEntProp(client, Prop_Data, "m_takedamage", 2); в DisableColor в категорию if(GetClientButtons(client) & DISABLE_COLOR).

Прикрепления: 8939434.sp(1.6 Kb)


Сообщение отредактировал Sunday - Пятница, 12.04.2013, 11:40:36
 
TEIN Дата: Пятница, 12.04.2013, 11:35:17 | Сообщение # 7
Сообщений: 568
Репутация: 78 [ +/- ]
h_Block[client] - лишняя вроде, с DISABLE_COLOR сомнения
 
Sunday Дата: Пятница, 12.04.2013, 11:44:08 | Сообщение # 8
Сообщений: 186
Репутация: 24 [ +/- ]
Цитата (DoK_1997)
h_Block[client] - лишняя вроде, с DISABLE_COLOR сомнения

На первый взгляд может показаться и так, в общем когда ты будешь стрелять или бежать в эти 0,5 секунд при проверке до момента ее отключения и если в эти миллисекунды перезапустится карта то выдаст ошибку, по этому этот блок и поставил.
 
daniil Дата: Пятница, 12.04.2013, 11:49:41 | Сообщение # 9
Сообщений: 100
Репутация: 0 [ +/- ]
Sunday, Спасибо
 
TEIN Дата: Пятница, 12.04.2013, 11:51:55 | Сообщение # 10
Сообщений: 568
Репутация: 78 [ +/- ]
Перезапустится карта? Перезайдет игрок, выйдет игрок - таймер килл, вроде так.
 
Sunday Дата: Пятница, 12.04.2013, 12:12:57 | Сообщение # 11
Сообщений: 186
Репутация: 24 [ +/- ]
Цитата (DoK_1997)
Перезапустится карта? Перезайдет игрок, выйдет игрок - таймер килл, вроде так.


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

Добавлено (12.04.2013, 12:12:57)
---------------------------------------------
Кстати парни, может кто знает как можно поменять ник на форуме?


Сообщение отредактировал Sunday - Пятница, 12.04.2013, 22:22:34
 
IvanDorn Дата: Пятница, 12.04.2013, 23:18:50 | Сообщение # 12
Сообщений: 20
Репутация: 0 [ +/- ]
Можно взять режим диско из админки,если нужно-могу кинуть
 
daniil Дата: Суббота, 13.04.2013, 07:50:47 | Сообщение # 13
Сообщений: 100
Репутация: 0 [ +/- ]
IvanDorn, давай для примера
 
TEIN Дата: Суббота, 13.04.2013, 07:52:14 | Сообщение # 14
Сообщений: 568
Репутация: 78 [ +/- ]
Ты хочешь спавн протект? чтобы он мигал? сколько секунд?
 
daniil Дата: Суббота, 13.04.2013, 08:36:41 | Сообщение # 15
Сообщений: 100
Репутация: 0 [ +/- ]
DoK_1997, столько же сколько игрок защищен.

Добавлено (13.04.2013, 08:36:41)
---------------------------------------------
т.е поставил я квар sm_protect_sec 5
и игрок мигает тоже 5 сек

 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Разноцветное окрашивание игрока
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: