Raised This Month: $ Target: $400
 0% 

Kick dead players after 60 sec


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
LaineN
Veteran Member
Join Date: Mar 2008
Location: Sweden
Old 05-21-2009 , 11:42   Kick dead players after 60 sec
Reply With Quote #1

Hi!
I've tryed to make a plugin that will kick a player if he was dead for 60 seconds, but I have some problems with it. Here is my code:

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>

#pragma semicolon 1

#define PLUGIN_NAME    "Dead Kicker"
#define PLUGIN_VERSION    "1.0"
#define PLUGIN_AUTHOR    "LaineN"

new bool:gbAlive[33];

new 
gDeadTime[33];

new 
gMaxPlayers;

public 
plugin_init()
{
    
register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR);
    
    
RegisterHam(Ham_Spawn"player""fwd_PlayerSpawn"1);
    
    
register_event("DeathMsg""event_PlayerDeath""a");
    
    
set_task(5.0"TaskCheckPlayers"___"b");
    
    
gMaxPlayers get_maxplayers();
}

public 
client_putinserver(id)
{
    
gbAlive[id] = false;
    
    
gDeadTime[id] = 0;
}

public 
client_disconnect(id)
{
    
gbAlive[id] = false;
}

public 
fwd_PlayerSpawn(id)
{
    
gbAlive[id] = true;
}

public 
event_PlayerDeath()
{
    new 
id read_data(2);
    
    
gbAlive[id] = false;
}

public 
TaskCheckPlayers()
{
    if ( 
get_playersnum() > )
    {
        for ( new 
id 1id <= gMaxPlayersid++ )
        {
            if ( 
access(idADMIN_IMMUNITY)
            || 
is_user_hltv(id) ) continue;
            
            if ( !
gbAlive[id] )
            {
                
gDeadTime[id] += 5;
                
CheckDeadTime(id);
            }
            else
            {
                if ( 
gDeadTime[id] > gDeadTime[id] = 0;
            }
        }
    }
}

CheckDeadTime(id)
{
    if ( 
gDeadTime[id] >= 60 )
    {
        new 
szName[32];
        
get_user_name(idszNamesizeof(szName) - 1);
        
        
client_print(0print_chat"%s was kicked for being dead longer than 60 seconds!"szName);
        
server_cmd("kick #%i ^"You were kicked for being dead longer than 60 seconds^""get_user_userid(id));
    }

After 60 seconds this message starts to print every 5 seconds:
Code:
 was kicked for being dead longer than 60 seconds!
Even if you are dead, or alive.

Someone see some faults in the code?
__________________
Bollnas Team - HideNSeek

See all of Bollnas Team's HideNSeek
servers at
http://bollnasteam.se/!


Last edited by LaineN; 05-21-2009 at 16:40.
LaineN is offline
 


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 01:31.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode