new g_szHud[256];
formatex(g_szHud, charsmax(g_szHud), "%s + %s (%i - %s)", leaderName, otherName, leaderLevel, teamLvlWeapon[leader]);
public plugin_natives() {
register_native("get_leader", "GetLeader");
}
public GetLeader() {
new szInfo[256];
return formatex(szInfo, charsmax(szInfo), "%s", g_szHud);
}
native get_leader(Leader[]);
new szLeader[256];
get_leader(szLeader);
log_to_file("addons\amxmodx\logs\leader.txt" , "^n%s^n", szLeader);
return formatex
, потому что просто вернёт количество записанного в массив.enum _:VampireData { szWpnName[20], Float:fHpValue }
new const g_WpnList[][VampireData] = {
{ "glock18", "10.0" },
{ "usp", "7.0" },
{ "ak47", "5.0" },
и т.д.
}
new const vampire_data[32] = { some, value...};
event_kill(killer)
set_user_health(killer, health+vampire_data[get_user_weapon(killer)]);
set_pdata_float(id, m_flVelocityModifier, 1.0);
/*
* Description: -
* Params: (WinStatus:status, ScenarioEventEndRound:event, Float:tmDelay)
*/
RG_RoundEnd,
Для блока конца раунда в pre ловишь хук, который написал Nordic Warrior. Для создания конца раунда - юзаешь натив, который написал Denzer.Мне надо, чтобы я мог остановить завершение раунда и закончить его, когда то или иное событие произойдет.
RegisterHookChain(RG_RoundEnd, "on_round_end_pre", .post = false);
public on_round_end_pre(status, event, tmDelay) {
// что нужно выполнить, чтобы раунд не завершился?
native rg_round_end(const Float:tmDelay, const WinStatus:st, const ScenarioEventEndRound:event = ROUND_NONE, const message[] = "default", const sentence[] = "default", const bool:trigger = false);
st
- Which team won, что в переводе - какая команда выиграла. Смотрим что у неё есть тег, и это WinStatus. А раз есть тег, значит должны быть какие-то значения которые должны быть использованы а не простые цифры, тогда ищем WinStatus: https://dev-cs.ru/amxx/cssdk_const/inc#155 и видим какие значения могут быть использованы. С ScenarioEventEndRound ровно то же самое. Сообщение о конце раунда какое душе угодно, это выводимое по центру (print_center) сообщение. sentence отвечает за звук который будет в конце раунда. Последнее, как и указано в описании, будет вызывать хук конца раунда если значение true.public on_round_end_pre(WinStatus:status, ScenarioEventEndRound:event, Float:tmDelay)
if(something)
{
SetHookChainReturn(ATYPE_BOOL, false);
return HC_SUPERCEDE;
}