// LIFE SYSTEM
///////////////////////////////////////////
public EventTerrsWin( ) {
if( !g_bEnabled || g_bFirstRound )
return PLUGIN_CONTINUE;
new iPlayers[ 32 ], iNum, iPlayer;
get_players( iPlayers, iNum, "c" );
if( iNum <= 1 )
return PLUGIN_CONTINUE;
new iLifeCvar = get_pcvar_num( g_pLifeSystem );
for( new i = 0; i < iNum; i++ ) {
iPlayer = iPlayers[ i ];
if( cs_get_user_team( iPlayer ) == CS_TEAM_T ) {
set_user_frags( iPlayer, get_user_frags( iPlayer ) + 3 );
if( iLifeCvar == 2 )
g_Lifes[ iPlayer ]++;
}
}
return PLUGIN_CONTINUE;
}
public EventDeath( ) {
#if defined FAKE_PLAYER
if( !g_bEnabled )
return PLUGIN_CONTINUE;
new iVictim = read_data( 2 );
new iTeam = get_user_team( iVictim );
if( iTeam == 1 && is_user_alive( g_iFakeplayer ) )
fakedamage( g_iFakeplayer, "worldspawn", 100.0, DMG_GENERIC );
if( !get_pcvar_num( g_pLifeSystem ) )
return PLUGIN_CONTINUE;
#else
if( !g_bEnabled || get_pcvar_num( g_pLifeSystem ) )
return PLUGIN_CONTINUE;
new iVictim = read_data( 2 );
new iTeam = get_user_team( iVictim );
#endif
new iKiller = read_data( 1 );
if( iKiller != iVictim && get_user_team(iKiller) != iTeam )
g_Lifes[iKiller]++;
if( cs_get_user_team( iVictim ) == CS_TEAM_CT && g_Lifes[ iVictim ] > 0 ) {
new iCTcount;
for( new i = 1; i <= g_iMaxplayers; i++ ) {
if( is_user_alive( i ) && cs_get_user_team( i ) == CS_TEAM_CT )
iCTcount++;
}
if( iCTcount > 1 ) {
set_task(2.0, "fnRevivePlayer", iVictim);
ColorChat( iVictim, RED, "%s^1 Wybierz opcje z systemu Zyc!", g_szPrefix, iVictim);
}
/*else
ColorChat( iVictim, RED, "%s^1 %L", g_szPrefix, iVictim, "DR_LIFE_CANT" );*/
}
return PLUGIN_CONTINUE;
}
public fnRevivePlayer( id ) {
if( g_bConnected[ id ] ) {
if( cs_get_user_team( id ) == CS_TEAM_CT ) {
new iCTcount;
for( new i = 1; i <= g_iMaxplayers; i++ )
if( is_user_alive( i ) && cs_get_user_team( i ) == CS_TEAM_CT )
iCTcount++;
if( iCTcount > 1 ) {
set_task(0.1, "mymenu", id);
}
}
}
}
public CmdShowlifes( id ) {
if( get_pcvar_num( g_pLifeSystem ) == 0 ) {
ColorChat( id, RED, "%s^1 %L", g_szPrefix, id, "DR_LIFE_DISABLE" );
return PLUGIN_HANDLED;
}
if( g_Lifes[ id ] > 0 )
ColorChat( id, RED, "%s^1 %L", g_szPrefix, id, "DR_LIFE_CC_COUNT", g_Lifes[ id ] );
else
ColorChat( id, RED, "%s^1 %L", g_szPrefix, id, "DR_LIFE_CC_NO" );
return PLUGIN_HANDLED;
}
public Showlifes( id ) {
set_hudmessage( 0, 128, 0, 0.04, 0.71, 0, 2.5, 2.5, 0.5, 0.5, 3 );
if( g_Lifes[ id ] > 0 )
ShowSyncHudMsg( id, g_iHudSync2, "%L", id, "DR_LIFE_COUNT", g_Lifes[ id ] );
else
ShowSyncHudMsg( id, g_iHudSync2, "%L", id, "DR_LIFE_NO" );
}
public mymenu(id){
client_cmd(id, "spk %s", MENU_OPEN);
new MyMenu;
MyMenu=menu_create("\r system Zyc","cbMyMenu");
menu_additem(MyMenu," \rWykorzystaj \w zycie");
menu_additem(MyMenu," \rZachowaj w\ zycie");
menu_display(id, MyMenu,0);
return PLUGIN_HANDLED;
}
public cbMyMenu(id, menu, item){
switch(item){
case 0:{
ExecuteHamB( Ham_CS_RoundRespawn, id );
g_Lifes[ id ]--;
}
case 1:{
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}