AMX MOD X
Пятница, 03.05.2024, 09:57:35



Приветствую Вас Гость | RSS
[ Главная ] [ один против всех - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: AlMod, slogic  
AMX Mod X Форум » Остальные форумы » Мусор » один против всех (помогите переделоть)
один против всех
CHyCMyMpNkДата: Четверг, 27.03.2008, 00:56:54 | Сообщение # 1
Полковник
Группа: Пользователи
Сообщений: 180
Репутация: 8
Статус: Не в сети
Привет ! , парни помогите сделать sos что то написали но толком не получается . Хотели что бы при запуске сервера плагин автоматически включался . Надо , что бЫ бЫл один террорист - получается когда как ; то двое ... один невидимЫй второй видимЫй ; то контрЫ невидимЫе ; то через раунд контер видимЫй - невидимЫй . Если всё таки найдутся добрЫе люди ;) , то можно бЫло бЫ и команду добавить для невидимости ( в процентах или как там ещё назвать ).

Quote
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
new solo, newsolo, firstround
public plugin_init()
{
register_concmd("amx_invis","toggle",ADMIN_CVAR,"1=on/0=off")
register_event("DeathMsg", "death_event", "a")
register_logevent("event_round_end", 2, "0=World triggered", "1=Round_End")
register_menucmd(register_menuid("Team_Select",1), (1<<0)|(1<<1)|(1<<4)|(1<<5), "team_select")
register_clcmd("jointeam", "join_team")
register_event("CurWeapon", "check_change", "be", "1=1")
register_cvar("amx_Teppop_message", "Tenepb %name% 6ygeT pe3aTb Bcex!")
register_cvar("sv_invis", "0")
}
public check_change(id)
{
if(get_cvar_num("sv_invis") != 1) return PLUGIN_CONTINUE
new wpnid = read_data(2)
new CsTeams:team = cs_get_user_team(id)
if(wpnid!=CSW_KNIFE && team==CS_TEAM_T)
{
strip_user_weapons(id)
give_item(id,"weapon_knife")
set_user_maxspeed(id,400.0)
set_user_gravity(id,0.4)
set_user_h ealth(id,200)
new user[32], len
user[0] = id
len = get_user_name(id,user[1],31)
set_task(2.0, "Teppop_msg", 0, user,len + 2)
}
return PLUGIN_CONTINUE
}
public Teppop_msg(user[]) {
if (get_cvar_num("sv_invis")==0){
return PLUGIN_HANDLED
}
if (get_cvar_num("sv_invis")==1)
{
new message[192]
get_cvar_string("amx_Teppop_message", message, 191)
replace(message, 191, "%name%", user[1])
set_hudmessage(0, 225, 0, 0.05, 0.45, 0, 6.0, 6.0, 0.5, 0.15, 3)
show_hudmessage(0, message)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public toggle(id,level,cid)
{
if(!cmd_access(id,level,cid,2))
return PLUGIN_HANDLED
new arg1[32]
read_argv(1,arg1,31)
if(equali(arg1,"1"))
{
set_hudmessage(0, 100, 0, -1.0, 0.65, 2, 0.02, 10.0, 0.01, 0.1, 2)
show_hudmessage(0,"nJIaruH npoTeB_Bcex 3anyLL|eH")
set_cvar_num("mp_limitteams",0)
set_cvar_num("mp_autoteambalance",0)
set_cvar_num("sv_invis",1)
firstround=1
set_cvar_num(" sv_restart",1)
event_round_end()
return PLUGIN_CONTINUE
}
if(equali(arg1,"0"))
{
set_hudmessage(0, 100, 0, -1.0, 0.65, 2, 0.02, 10.0, 0.01, 0.1, 2)
show_hudmessage(0,"nJIaruH npoTeB_Bcex BbIkJIIO4eH")
set_cvar_num("mp_limitteams",1)
set_cvar_num("mp_autoteambalance",1)
set_cvar_num("sv_invis",0)
set_cvar_num("sv_restartro und",1)
set_user_rendering(newsolo,kRenderFxNone,0,0,0,kRenderNormal,0)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public team_select(id, key)
{
if(get_cvar_num("sv_invis") != 1) return PLUGIN_CONTINUE
if(key==0 || key==4)
{
engclient_cmd(id,"chooseteam")
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public join_team(id)
{
if(get_cvar_num("sv_invis") != 1) return PLUGIN_CONTINUE
new arg[2]
read_argv(1,arg,1)
if((str_to_num(arg)-1)==0 || (str_to_num(arg)-1)==4)
{
engclient_cmd(id,"chooseteam")
return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}
public death_event()
{
if(get_cvar_num("sv_invis") != 1) return PLUGIN_CONTINUE
newsolo = read_data(1)
solo = read_data(2)
return PLUGIN_CONTINUE
}
public event_round_end()
{
if(get_cvar_num("sv_invis") != 1) return PLUGIN_CONTINUE
if(firstround==1)
{
if(!get_playersnum()) return PLUGIN_CONTINUE
new playersT[32], playersCT[32], numT, numCT
get_players(playersT,numT,"e","TERRORIST")
for(new i=0;i<numT;i++)
cs_set_user_team(playersT[i],CS_TEAM_CT)
get_players(playersCT,numCT,"e","CT")
newsolo = playersCT[random_num(0,numCT-1)]
cs_set_user_team(newsolo,CS_TEAM_T)
set_user_rendering(newsolo, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0)
firstround=0
}
else
{
if(!get_playersnum()) return PLUGIN_CONTINUE
if(newsolo==solo || newsolo==0)
{
new playersCT[32], numCT
get_players(playersCT,numCT,"e","CT")
newsolo = playersCT[random_num(0,numCT-1)]
cs_set_user_team(newsolo,CS_TEAM_T)
cs_set_user_team(solo,CS_TEAM_CT)
set_user_rendering(solo,kRenderFxNone,0,0,0,kRenderNormal,0)
set_ user_rendering(newsolo, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0)
}
else
{
cs_set_user_team(newsolo,CS_TEAM_T)
cs_set_user_team(solo,CS_TEAM_CT)
set_user_rendering(solo,kRenderFxNone,0,0,0,kRenderN ormal,0)
set_user_rendering(newsolo, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0)
}
}
return PLUGIN_CONTINUE
}
public plugin_end()
{
set_cvar_num("mp_limitteams",1)
set_cvar_num("mp_friendlyfire",0)
set_cvar_num("mp_autoteambalance",0)
set_cvar_num("sv_ invis",0)
}

plz blush


вечное спасибо r013x'y : )
 
DaTaДата: Четверг, 27.03.2008, 02:27:07 | Сообщение # 2
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Репутация: 16
Статус: Не в сети
Ты хоть сам понял, что ты сказал? :D
Quote (CHyCMyMpNk)
Хотели что бы при запуске сервера плагин автоматически включался

Для начала должен быть установлен метамод и амхх. Достаточно скомпилированный *.amxx файл поместить в директорию /plugins и прописать имя этого файла в plugins.ini
Quote (CHyCMyMpNk)
Надо , что бЫ бЫл один террорист - получается когда как

т.е. нужно что бы только один игрок мог играть за команду террористов?
Quote (CHyCMyMpNk)
то двое ... один невидимЫй второй видимЫй

игроки, ящики, лампочки?)
Quote (CHyCMyMpNk)
то контрЫ невидимЫе

они по умолчанию видимые
Quote (CHyCMyMpNk)
то через раунд контер видимЫй - невидимЫй

Наверно с прозрачностью 50%?

Quote (CHyCMyMpNk)
Если всё таки найдутся добрЫе люди ;) , то можно бЫло бЫ и команду добавить для невидимости ( в процентах или как там ещё назвать ).

ну это легко:
amx_visibility "имя" "уровень(0-255)"
чем меньше уровень видимости - тем больше игрок невидим, 0 - вообще не видим, только тень есть
Code
#include <amxmodx>
#include <amxmisc>
#include <fun>        //раз ты его используешь

#define VISIBILITY_LEVEL ADMIN_KICK   //доступ к команде amx_visibility

public plugin_init()
  register_concmd("amx_visibility", "SetVisibility", VISIBILITY_LEVEL, "<name> <visibility (0-255)> - sets transparency of client")

public SetVisibility(id, level, cid)
{
  if(  !cmd_access(id, level, cid, 3)  )
   return PLUGIN_HANDLED
   
  static szTempString[33], cl_id, iTransLevel
  read_argv(1, szTempString, sizeof szTempString - 1)
  cl_id = cmd_target(id, szTempString, 6)
   
  if (  !cl_id  )
  {
   console_print(id, "Wrong name or user not alive!")
   return PLUGIN_HANDLED
  }
   
  read_argv(2, szTempString, sizeof szTempString - 1)
  iTransLevel = str_to_num(szTempString)
  if(!  ( 0 <= iTransLevel <= 255 )  )
  {
   console_print(id, "Wrong visibility level! Must be 0-255.")
   return PLUGIN_HANDLED
  }
   
  set_user_rendering(cl_id, _, _, _, _, kRenderTransAlpha, iTransLevel)
   
  return PLUGIN_HANDLED
}
 
CHyCMyMpNkДата: Четверг, 27.03.2008, 03:09:32 | Сообщение # 3
Полковник
Группа: Пользователи
Сообщений: 180
Репутация: 8
Статус: Не в сети
Quote (DaTa)
Ты хоть сам понял, что ты сказал? :D

Quote (CHyCMyMpNk) Хотели что бы при запуске сервера плагин автоматически включался

Для начала должен быть установлен метамод и амхх. Достаточно скомпилированный *.amxx файл поместить в директорию /plugins и прописать имя этого файла в plugins.ini

Я то понял :D Метамод и амхх всё это у меня есть и что куда прописЫвать знаю . Я имел ввиду что бЫ в консоле не надо ни чего прописЫвать . Этот плагин не будет работать пока не пропишешь amx_invis 1 .

Quote (DaTa)
т.е. нужно что бы только один игрок мог играть за команду террористов?

да , что бЫ он бЫл против всех :)

Quote (DaTa)
amx_visibility "имя" "уровень(0-255)"

а нельзя её как то в плагин запихать что бЫ действовал только для терра ?


вечное спасибо r013x'y : )
 
BruteДата: Четверг, 27.03.2008, 05:00:39 | Сообщение # 4
Генерал-полковник
Группа: Скриптеры
Сообщений: 1123
Репутация: 9
Статус: Не в сети
Закрываю.

1) Тема создана не в том разделе.
2) Уже есть такая тема. Автор сам удалил своё первое сообщение в своей прошлой теме http://amxmodx.ucoz.ru/forum/20-1567-1 .

 
AMX Mod X Форум » Остальные форумы » Мусор » один против всех (помогите переделоть)
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2024