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

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

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

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

3 страниц V   1 2 3

Плагин розминка. (Добавление)

Статус пользователя qpi3ik
сообщение 22.9.2014, 23:14
Сообщение #21


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Bloo @ 22.9.2014, 23:53) *
qpi3ik, все равно на паузе остается? Так у вас?
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.5"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iJoinedState = 121
const m_iMenu = 205

const MENU_CHOOSEAPPEARANCE = 3
const STATE_PICKINGCLASS = 4

new HamHook:g_iPlayerPreThink

new Timer, SecondsCvar

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

DisableHamForward(g_iPlayerPreThink = RegisterHam(Ham_Player_PreThink, "player", "fw_PlayerPreThink_Post", 1))

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

pause("ac", "myplugin.amxx") // Приостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

unpause("ac", "myplugin.amxx") // Возобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoinedState) == STATE_PICKINGCLASS)
EnableHamForward(g_iPlayerPreThink)
}

public fw_PlayerPreThink_Post(id)
{
DisableHamForward(g_iPlayerPreThink)

if(!is_user_alive(id))
ExecuteHam(Ham_Spawn, id)
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}



О теперь заработал) А как убрать конец раунда пока не закончиться время розминки?

Цитата(Bloo @ 22.9.2014, 23:53) *
qpi3ik, все равно на паузе остается? Так у вас?
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.5"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iJoinedState = 121
const m_iMenu = 205

const MENU_CHOOSEAPPEARANCE = 3
const STATE_PICKINGCLASS = 4

new HamHook:g_iPlayerPreThink

new Timer, SecondsCvar

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

DisableHamForward(g_iPlayerPreThink = RegisterHam(Ham_Player_PreThink, "player", "fw_PlayerPreThink_Post", 1))

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

pause("ac", "myplugin.amxx") // Приостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

unpause("ac", "myplugin.amxx") // Возобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoinedState) == STATE_PICKINGCLASS)
EnableHamForward(g_iPlayerPreThink)
}

public fw_PlayerPreThink_Post(id)
{
DisableHamForward(g_iPlayerPreThink)

if(!is_user_alive(id))
ExecuteHam(Ham_Spawn, id)
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}


А был так
Скрытый текст
Код:

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.5"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iJoinedState = 121
const m_iMenu = 205

const MENU_CHOOSEAPPEARANCE = 3
const STATE_PICKINGCLASS = 4

new HamHook:g_iPlayerPreThink

new Timer, SecondsCvar

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

DisableHamForward(g_iPlayerPreThink = RegisterHam(Ham_Player_PreThink, "player", "fw_PlayerPreThink_Post", 1))

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

pause("ac", "myplugin.amxx") // ѕриостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

unpause("ac", "myplugin.amxx") // ¬озобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoinedState) == STATE_PICKINGCLASS)
EnableHamForward(g_iPlayerPreThink)
}

public fw_PlayerPreThink_Post(id)
{
DisableHamForward(g_iPlayerPreThink)

if(!is_user_alive(id))
ExecuteHam(Ham_Spawn, id)
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 22.9.2014, 23:27
Сообщение #22


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

С плагином вампиризм не пашет. Он на паузу ставиться и не включается потом.

Отредактировал: qpi3ik, - 22.9.2014, 23:55
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Anton1o
сообщение 23.9.2014, 9:59
Сообщение #23


Стаж: 17 лет

Сообщений: 919
Благодарностей: 1392
Полезность: 1160

qpi3ik,
https://c-s.net.ua/forum/topic65998.html
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 23.9.2014, 16:05
Сообщение #24


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

qpi3ik, исправь у себя в коде, а то ошибка будет.

Код:
public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}
--->
Код:
public fw_PlayerSpawn_Post(id)
{
if(!Timer || !is_user_alive(id))
return

set_user_health(id, 35)

cs_set_user_money(id, 0, 0)
}


Отредактировал: Fintok, - 23.9.2014, 16:07
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 23.9.2014, 21:02
Сообщение #25


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Fintok @ 23.9.2014, 17:05) *
qpi3ik, исправь у себя в коде, а то ошибка будет.

Код:
public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}
--->
Код:
public fw_PlayerSpawn_Post(id)
{
if(!Timer || !is_user_alive(id))
return

set_user_health(id, 35)

cs_set_user_money(id, 0, 0)
}


Плагин работет норм но есть вопрос.
Можно ли убрать конец раунда во время розминки?

Да и я заменил

Код:
pause("ac", "myplugin.amxx") // Приостановить работу определенного плагина


на

Код:
server_cmd("amx_pausecfg pause vampire.amxx") // Приостановить работу определенного плагина


и

Код:
pause("ac", "myplugin.amxx") // Возобновить работу определенного плагина


на

Код:
server_cmd("amx_pausecfg enable vampire.amxx") // Возобновить работу определенного плагина


Так как не включался плагин(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 23.9.2014, 21:08
Сообщение #26


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

qpi3ik, добавь что нибудь типа в начале разминки:
Код:
server_cmd(mp_roundtime 10)

И в конце разминки:
Код:
server_cmd(mp_roundtime 2.5)

или сколько у тебя стоит
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 23.9.2014, 22:05
Сообщение #27


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Bloo @ 23.9.2014, 22:08) *
qpi3ik, добавь что нибудь типа в начале разминки:
Код:
server_cmd(mp_roundtime 10)

И в конце разминки:
Код:
server_cmd(mp_roundtime 2.5)

или сколько у тебя стоит


Подскажи куда добавить так как выбивает ошибку при компиляции.
Код:

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.5"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iJoinedState = 121
const m_iMenu = 205

const MENU_CHOOSEAPPEARANCE = 3
const STATE_PICKINGCLASS = 4

new HamHook:g_iPlayerPreThink

new Timer, SecondsCvar

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

DisableHamForward(g_iPlayerPreThink = RegisterHam(Ham_Player_PreThink, "player", "fw_PlayerPreThink_Post", 1))

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

server_cmd("amx_pausecfg pause vampire.amxx") // Приостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

server_cmd("amx_pausecfg enable vampire.amxx") // Возобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoinedState) == STATE_PICKINGCLASS)
EnableHamForward(g_iPlayerPreThink)
}

public fw_PlayerPreThink_Post(id)
{
DisableHamForward(g_iPlayerPreThink)

if(!is_user_alive(id))
ExecuteHam(Ham_Spawn, id)
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Bloo
сообщение 23.9.2014, 22:47
Сообщение #28


Стаж: 12 лет

Сообщений: 15547
Благодарностей: 6971
Полезность: 1206

qpi3ik, вроде так
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.5"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iJoinedState = 121
const m_iMenu = 205

const MENU_CHOOSEAPPEARANCE = 3
const STATE_PICKINGCLASS = 4

new HamHook:g_iPlayerPreThink

new Timer, SecondsCvar

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

DisableHamForward(g_iPlayerPreThink = RegisterHam(Ham_Player_PreThink, "player", "fw_PlayerPreThink_Post", 1))

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

server_cmd("amx_pausecfg pause vampire.amxx") // Приостановить работу определенного плагина

server_cmd("mp_roundtime 10")
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

server_cmd("amx_pausecfg enable vampire.amxx") // Возобновить работу определенного плагина

server_cmd("mp_roundtime 2.5")
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoinedState) == STATE_PICKINGCLASS)
EnableHamForward(g_iPlayerPreThink)
}

public fw_PlayerPreThink_Post(id)
{
DisableHamForward(g_iPlayerPreThink)

if(!is_user_alive(id))
ExecuteHam(Ham_Spawn, id)
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 23.9.2014, 23:02
Сообщение #29


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Bloo @ 23.9.2014, 23:47) *
qpi3ik, вроде так
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.5"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iJoinedState = 121
const m_iMenu = 205

const MENU_CHOOSEAPPEARANCE = 3
const STATE_PICKINGCLASS = 4

new HamHook:g_iPlayerPreThink

new Timer, SecondsCvar

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

DisableHamForward(g_iPlayerPreThink = RegisterHam(Ham_Player_PreThink, "player", "fw_PlayerPreThink_Post", 1))

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

server_cmd("amx_pausecfg pause vampire.amxx") // Приостановить работу определенного плагина

server_cmd("mp_roundtime 10")
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

server_cmd("amx_pausecfg enable vampire.amxx") // Возобновить работу определенного плагина

server_cmd("mp_roundtime 2.5")
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer)
return

if(is_user_alive(id))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoinedState) == STATE_PICKINGCLASS)
EnableHamForward(g_iPlayerPreThink)
}

public fw_PlayerPreThink_Post(id)
{
DisableHamForward(g_iPlayerPreThink)

if(!is_user_alive(id))
ExecuteHam(Ham_Spawn, id)
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qvadro
сообщение 23.9.2014, 23:13
Сообщение #30


Стаж: 16 лет

Сообщений: 358
Благодарностей: 147
Полезность: 579

предупреждение 217 - проблема в выравнивании кода. Сделайте в строке 62 столько же пробелов сколько и в строке 60.


Достойно парировать, к сожалению, умеют далеко не многие. Нельзя наказывать людей за критику.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 24.9.2014, 10:09
Сообщение #31


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

qpi3ik, я говорю, исправь функцию в плагине, ошибки будут при смене карты.
Если ты ничего не понимаешь в скриптинге, то хотя бы прислушивайся к советам.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 24.9.2014, 19:24
Сообщение #32


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Fintok @ 24.9.2014, 11:09) *
qpi3ik, я говорю, исправь функцию в плагине, ошибки будут при смене карты.
Если ты ничего не понимаешь в скриптинге, то хотя бы прислушивайся к советам.


Исправил.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 24.9.2014, 21:11
Сообщение #33


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Fintok @ 24.9.2014, 11:09) *
qpi3ik, я говорю, исправь функцию в плагине, ошибки будут при смене карты.
Если ты ничего не понимаешь в скриптинге, то хотя бы прислушивайся к советам.


Нашел баг. Если сменить на карту 32hp_2 то всех убивает в начале раунда и так безконечно.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qvadro
сообщение 25.9.2014, 0:17
Сообщение #34


Стаж: 16 лет

Сообщений: 358
Благодарностей: 147
Полезность: 579

Цитата(qpi3ik @ 24.9.2014, 23:11) *
Нашел баг. Если сменить на карту 32hp_2 то всех убивает в начале раунда и так безконечно.

Это не баг, плагин не заточен под карты 35 hp.
Код:
set_user_health(id, 35)

Выставляя игроку 35 hp, ничего то на картах отнимается 65 hp ?)

Код:
public fw_PlayerSpawn_Post(id)
{
new szMap[32];
get_mapname(szMap,31);

if(!Timer || !is_user_alive(id)) return PLUGIN_HANDLED;

if(!equal(szMap,"35hp",4)){
set_user_health(id, 35);
cs_set_user_money(id, 0);
}else{
cs_set_user_money(id, 0);
}
return PLUGIN_CONTINUE;
}


Отредактировал: qvadro, - 25.9.2014, 0:42


Достойно парировать, к сожалению, умеют далеко не многие. Нельзя наказывать людей за критику.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 27.9.2014, 14:50
Сообщение #35


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

И еще один баг нашел. Кто не успел выбрать команду он кидает на карту игрока (спектора) вот скрины.
Даже после окончания розминки!





Отредактировал: qpi3ik, - 27.9.2014, 14:51
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 27.9.2014, 17:36
Сообщение #36


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

qpi3ik, по идее не должно так происходить, потому что воскрешение идет только после выбора класса игрока.
Попробуй тогда такой вариант
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.6"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iMenu = 205
const m_iJoiningState = 121

const MENU_CHOOSEAPPEARANCE = 3
const JOIN_CHOOSEAPPEARANCE = 4

new Timer, SecondsCvar, szMapName[32]

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

get_mapname(szMapName, charsmax(szMapName))

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

pause("ac", "vampire.amxx") // Приостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

unpause("ac", "vampire.amxx") // Возобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer || !is_user_alive(id))
return

if(!((containi(szMapName, "1hp") != -1) || (containi(szMapName, "35hp") != -1)))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoiningState) == JOIN_CHOOSEAPPEARANCE)
{
new command[11], arg[32]

read_argv(0, command, charsmax(command))
read_argv(1, arg, charsmax(arg))

engclient_cmd(id, command, arg)

ExecuteHam(Ham_Player_PreThink, id)

if(!is_user_alive(id))
ExecuteHamB(Ham_Spawn, id)

return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 30.9.2014, 20:35
Сообщение #37


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Fintok @ 27.9.2014, 18:36) *
qpi3ik, по идее не должно так происходить, потому что воскрешение идет только после выбора класса игрока.
Попробуй тогда такой вариант
Код:
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.6"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iMenu = 205
const m_iJoiningState = 121

const MENU_CHOOSEAPPEARANCE = 3
const JOIN_CHOOSEAPPEARANCE = 4

new Timer, SecondsCvar, szMapName[32]

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

get_mapname(szMapName, charsmax(szMapName))

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

pause("ac", "vampire.amxx") // Приостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

unpause("ac", "vampire.amxx") // Возобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer || !is_user_alive(id))
return

if(!((containi(szMapName, "1hp") != -1) || (containi(szMapName, "35hp") != -1)))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoiningState) == JOIN_CHOOSEAPPEARANCE)
{
new command[11], arg[32]

read_argv(0, command, charsmax(command))
read_argv(1, arg, charsmax(arg))

engclient_cmd(id, command, arg)

ExecuteHam(Ham_Player_PreThink, id)

if(!is_user_alive(id))
ExecuteHamB(Ham_Spawn, id)

return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}


Теперь новый баг! Когда игрока убивают после розминки в обычном раунде то он не чего не может сделать не TAB глянуть не команду сменить и не переключиться на другого игрока(
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 30.9.2014, 20:57
Сообщение #38


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

qpi3ik, O_o в новом раунде? Этого не может быть, все функции отключаются как только таймер закончится.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя qpi3ik
сообщение 30.9.2014, 21:00
Сообщение #39


Стаж: 12 лет

Сообщений: 621
Благодарностей: 78
Полезность: 12

Цитата(Fintok @ 30.9.2014, 21:57) *
qpi3ik, O_o в новом раунде? Этого не может быть, все функции отключаются как только таймер закончится.


Серйозно вот исходник:
Код:

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <dhudmessage>

#define PLUGIN_NAME "Auto Restart KNIFE"
#define PLUGIN_VERSION "1.6"
#define PLUGIN_AUTHOR "Leo_[BH] & Fintok!"

const m_iMenu = 205
const m_iJoiningState = 121

const MENU_CHOOSEAPPEARANCE = 3
const JOIN_CHOOSEAPPEARANCE = 4

new Timer, SecondsCvar, szMapName[32]

public plugin_init()
{
register_plugin(PLUGIN_NAME , PLUGIN_VERSION, PLUGIN_AUTHOR)

register_dictionary("auto_rr.txt")

SecondsCvar = register_cvar("auto_rr_time", "45")

RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
RegisterHam(Ham_Killed, "player", "fw_PlayerKilled_Post", 1)

register_clcmd("menuselect", "clcmd_MenuSelect_JoinClass")
register_clcmd("joinclass", "clcmd_MenuSelect_JoinClass")

register_event("CurWeapon", "ev_CurWeapon", "be", "1=1", "2!29")

get_mapname(szMapName, charsmax(szMapName))

Timer = get_pcvar_num(SecondsCvar)

set_task(1.0, "start_rr_timer", .flags="a", .repeat=get_pcvar_num(SecondsCvar))

server_cmd("amx_pausecfg pause vampire.amxx") // Приостановить работу определенного плагина
}

public start_rr_timer()
{
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.08, 0, 0.0, 0.01)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_TIME", Timer)

if(Timer == 1)
{
server_cmd("sv_restartround 1")

set_task(3.0, "rr_end")

server_cmd("amx_pausecfg enable vampire.amxx") // Возобновить работу определенного плагина
}

Timer -= 1
}

public rr_end()
{
set_dhudmessage(0, 128, 0, -1.0, 0.78, 2, 6.0, 3.0, 0.1, 1.5, false)
show_dhudmessage(0, "%L", LANG_PLAYER, "RR_GG")
}

public fw_PlayerSpawn_Post(id)
{
if(!Timer || !is_user_alive(id))
return

if(!((containi(szMapName, "1hp") != -1) || (containi(szMapName, "35hp") != -1)))
set_user_health(id, 35)

cs_set_user_money(id, 0)
}

public fw_PlayerKilled_Post(id)
{
if(!Timer)
return

set_task(1.0, "playerRespawn", id)
}

public playerRespawn(id)
{
switch(cs_get_user_team(id))
{
case CS_TEAM_T, CS_TEAM_CT:
{
if(!is_user_alive(id))
ExecuteHam(Ham_CS_RoundRespawn, id)
}
}
}

public clcmd_MenuSelect_JoinClass(id)
{
if(get_pdata_int(id, m_iMenu) == MENU_CHOOSEAPPEARANCE && get_pdata_int(id, m_iJoiningState) == JOIN_CHOOSEAPPEARANCE)
{
new command[11], arg[32]

read_argv(0, command, charsmax(command))
read_argv(1, arg, charsmax(arg))

engclient_cmd(id, command, arg)

ExecuteHam(Ham_Player_PreThink, id)

if(!is_user_alive(id))
ExecuteHamB(Ham_Spawn, id)

return PLUGIN_HANDLED
}
return PLUGIN_CONTINUE
}

public ev_CurWeapon(id)
{
if(!Timer)
return

engclient_cmd(id, "weapon_knife")
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fintok
сообщение 30.9.2014, 21:00
Сообщение #40


Стаж: 16 лет

Сообщений: 756
Благодарностей: 294
Полезность: 638

Хотя одна функиця не отключается, функция воскрешения только что подключившихся игроков.
Я забыл вставить выключатель. Но она ни как не влияет на твой баг.

Исправь у себя
Код:
public clcmd_MenuSelect_JoinClass(id)
{
if(!Timer)
return

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