Veteran Member
|
04-02-2012
, 14:35
Re: [ZP] Extra Addon: Countdown NEW !
|
#9
|
here is my version, its a very old code, used in darkness pain and darkangels3
PHP Code:
#include < amxmodx >
#include < amxmisc >
#include < dhudmessage >
#define MAX_SECONDS 11
#define MAX_SECONDS2 19
enum _: iRGB
{
r,
g,
b
};
enum ( += 1337 )
{
TASK_ONE,
TASK_TWO,
TASK_THREE,
TASK_FOUR
};
new const gHudColors[ MAX_SECONDS ][ iRGB ] =
{
//----------------------
// Error countdown color
{ 159, 0, 0 }, // 0
// Error countdown color
//----------------------
// Countdown
{ 255, 0, 249 }, // 1
{ 0, 159, 159 }, // 2
{ 0, 174, 147 }, // 3
{ 0, 128, 128 }, // 4
{ 55, 162, 162 }, // 5
{ 92, 199, 199 }, // 6
{ 0, 159, 159 }, // 7
{ 92, 199, 199 }, // 8
{ 55, 162, 162 }, // 9
{ 0, 159, 159 } // 10
};
new const gSoundsSpeak[ MAX_SECONDS ][ ] =
{
"Darkness7/countdown/one.wav", // 0
"Darkness7/countdown/one.wav", // 1
"Darkness7/countdown/two.wav", // 2
"Darkness7/countdown/three.wav", // 3
"Darkness7/countdown/four.wav", // 4
"Darkness7/countdown/five.wav", // 5
"Darkness7/countdown/six.wav", // 6
"Darkness7/countdown/seven.wav", // 7
"Darkness7/countdown/eight.wav", // 8
"Darkness7/countdown/nine.wav", // 9
"Darkness7/countdown/ten.wav" // 10
};
new gCountTimer;
public plugin_init( )
{
register_plugin( "countdown", "2.6", "Dare-Devil" );
register_event("HLTV", "event_round_start", "a", "1=0", "2=0");
}
public plugin_precache( )
{
new i;
for( i = 0; i < MAX_SECONDS; i++ )
{
precache_sound( gSoundsSpeak[ i ] );
}
}
// Remove task, set tast
public event_round_start( )
{
// Remove Timer number ( fix bug )
gCountTimer = 0;
remove_task( TASK_ONE );
remove_task( TASK_TWO );
remove_task( TASK_THREE );
remove_task( TASK_FOUR );
// Set Remove Task
set_task( float( MAX_SECONDS2 ), "RemoveTasks2011", TASK_THREE, _, _, "b" );
// Set Countdown Task
set_task( 18.0, "StartCountdown", TASK_FOUR, _, _, "a", MAX_SECONDS2 );
}
// Start Countdown task +1 sec
public StartCountdown( )
{
remove_task( TASK_ONE );
remove_task( TASK_TWO );
remove_task( TASK_THREE );
remove_task( TASK_FOUR );
set_task( float( MAX_SECONDS ), "RemoveTimerHUD", TASK_ONE, _, _, "b" );
set_task( 1.0, "ShowCountTimer", TASK_TWO, _, _, "a", MAX_SECONDS );
}
// Remove Countdown when infect round start
public zp_round_started()
{
remove_task( TASK_ONE );
remove_task( TASK_TWO );
remove_task( TASK_THREE );
remove_task( TASK_FOUR );
set_task( 1.0, "RemoveTasks2011", TASK_THREE, _, _, "b" );
set_task( 1.0, "RemoveTimerHUD", TASK_ONE, _, _, "b" );
// Remove Timer number ( fix bug )
gCountTimer = 0;
}
// show countdown, play countdown sound
public ShowCountTimer( )
{
gCountTimer++;
new iTimer = MAX_SECONDS - gCountTimer;
// set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
// show_dhudmessage( 0, "%d", iTimer );
if (gCountTimer == 1)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 10 =-^n[*********°]", iTimer );
}
else if (gCountTimer == 2)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 9 =-^n[********°°]", iTimer );
}
else if (gCountTimer == 3)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 8 =-^n[*******°°°]", iTimer );
}
else if (gCountTimer == 4)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 7 =-^n[******°°°°]", iTimer );
}
else if (gCountTimer == 5)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 6 =-^n[*****°°°°°]", iTimer );
}
else if (gCountTimer == 6)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 5 =-^n[****°°°°°°]", iTimer );
}
else if (gCountTimer == 7)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 4 =-^n[***°°°°°°°]", iTimer );
}
else if (gCountTimer == 8)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 3 =-^n[**°°°°°°°°]", iTimer );
}
else if (gCountTimer == 9)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 2 =-^n[*°°°°°°°°°]", iTimer );
}
else if (gCountTimer == 10)
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 1 =-^n[°°°°°°°°°°]", iTimer );
}
else
{
set_dhudmessage( gHudColors[ iTimer ][ r ], gHudColors[ iTimer ][ g ], gHudColors[ iTimer ][ b ], -1.0, 0.28, 1, 0.0, 0.1, 0.2, 1.0);
show_dhudmessage( 0, "-= 0 =-^n[**********]", iTimer );
}
if( iTimer <= MAX_SECONDS )
{
new szNumToWord[ 20 ];
num_to_word( iTimer, szNumToWord, charsmax( szNumToWord ) );
client_cmd( 0, "speak ^"Darkness7/countdown/%s^"", szNumToWord );
}
}
// remove hud task
public RemoveTimerHUD( )
{
remove_task( TASK_ONE );
remove_task( TASK_TWO );
gCountTimer = 0;
}
// remove hud task task
public RemoveTasks2011( )
{
remove_task( TASK_THREE );
remove_task( TASK_FOUR );
}
countdown stop when gameplay mode start, and you can make every count different text and color.
feel free to add a code in your post, then you need to change the sounds
that sounds dont exist on default cstrike/valve folder.
|
|