Участник
Пользователь
- Сообщения
- 775
- Реакции
- 293
- Помог
- 11 раз(а)
Код:
rg_send_bartime(id, 0);
set_member(g_iEntity, m_Grenade_flDefuseCountDown, get_gametime());
Последнее редактирование модератором:
rg_send_bartime(id, 0);
set_member(g_iEntity, m_Grenade_flDefuseCountDown, get_gametime());
public CWeapon_DefaultDeploy_Pre(iItem, sViewModel[], sWeaponModel[], iAnim, sAnimExt[], iSkipLocal)
{
if(!is_entity(iItem) || !equal(sViewModel, "models/v_c4.mdl"))
return HC_CONTINUE;
SetHookChainArg(2, ATYPE_STRING, V_MODEL);
SetHookChainArg(3, ATYPE_STRING, P_MODEL);
return HC_SUPERCEDE;
}
можно просто блов на 0.0rg_send_bartime(id, 0);
set_member(g_iEntity, m_Grenade_flDefuseCountDown, get_gametime());
Код для моментального разминирования C4
Блочишь вызов же. Просто аргументы меняй.Внимание вопрос, что я делаю не так. По какой причине модель С4 не заменяется
Код:public CWeapon_DefaultDeploy_Pre(iItem, sViewModel[], sWeaponModel[], iAnim, sAnimExt[], iSkipLocal) { if(!is_entity(iItem) || !equal(sViewModel, "models/v_c4.mdl")) return HC_CONTINUE; SetHookChainArg(2, ATYPE_STRING, V_MODEL); SetHookChainArg(3, ATYPE_STRING, P_MODEL); return HC_SUPERCEDE; }
public WeaponBox_SetModel_Pre(const iWeaponBox, const szModel[])
#define IsC4(%1) bool:get_member(%1, m_Grenade_bIsC4)
, не вышлоpublic WeaponBox_SetModel_Pre(const iWeaponBox, const szModel[])
{
if(!equal(szModel, "models/w_c4.mdl"))
return HC_CONTINUE;
SetHookChainArg(2, ATYPE_STRING, W_MODEL);
return HC_CONTINUE;
}
if(!equal(szModel, "models/w_c4.mdl"))
if(!get_member(iWeaponBox, m_WeaponBox_bIsBomb))
RegisterHam(Ham_Touch, "func_bomb_target", "Ham_Touch_Post", true);
stock bool:rg_get_user_plantzone(const pIndex)
{
new iSignals[UnifiedSignals];
get_member(pIndex, m_signals, iSignals);
return bool:(SignalState:iSignals[US_State] & SIGNAL_BOMB);
}
// Is player at the bomb target (func_bomb_target)?
// Note: there are no good way to detect if player is at the info_bomb_target
new target = NULLENT, class[] = "func_bomb_target", bool:is_inside = false;
while ((target = rg_find_ent_by_class(target, class)))
{
if (!rg_boxents_distance(index, target))
{
is_inside = true;
break;
}
}
if (is_inside)
stock Float:rg_boxents_distance(boxent1, boxent2)
{
new Float:mins1[3], Float:maxs1[3];
get_entvar(boxent1, var_absmin, mins1);
get_entvar(boxent1, var_absmax, maxs1);
new Float:mins2[3], Float:maxs2[3];
get_entvar(boxent2, var_absmin, mins2);
get_entvar(boxent2, var_absmax, maxs2);
return rg_boxes_distance(mins1, maxs1, mins2, maxs2);
}
stock Float:rg_boxes_distance(const Float:mins1[3], const Float:maxs1[3], const Float:mins2[3], const Float:maxs2[3])
{
new Float:dist[3];
for (new i = 0; i < 3; ++i) {
if (mins1[i] > maxs2[i])
dist[i] = mins1[i] - maxs2[i];
else if (mins2[i] > maxs1[i])
dist[i] = mins2[i] - maxs1[i];
}
return vector_length(dist);
}
m_izSBarState
Float:get_member(id, m_progressEnd)
- ответ будет время бартайма + время раунда, следовательноFloat:get_member(id, m_progressEnd) - get_gametime()
- получаем в ответ, то время которое используем в rg_send_bartime(id, 2, true);
, т.е. в моем случае, всегда будет 2.0
/*
* Description: -
* Member type: int [4]
* Get params: get_member(index, member, element);
* Set params: set_member(index, member, value, element);
*/
m_izSBarState,
get_member(id, m_izSBarState, SBAR_END);
SBAR_END
Хукай синкДрузья, подскажите такой вопрос, как отловить время окончания bartime.
попробовалget_member(id, m_izSBarState, SBAR_END);
но при компилировании ругается наSBAR_END
get_member(id, m_izSBarState, 4);
- но ту какие-то магические числа появляются вроде1103296205
1105682103
1107093565
1107845865