Raised This Month: $51 Target: $400
 12% 

[tut] how to use radio chat on css


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
javalia
Senior Member
Join Date: May 2009
Location: korea, republic of
Old 11-07-2010 , 14:57   [tut] how to use radio chat on css
Reply With Quote #1

this stock will allow u to use radio msg text in css
like
javalia @ ctspawn (radio) : need back up

with these stocks.

Code:
stock bool:isClientConnectedIngame(client){
    
    if(client > 0 && client <= MaxClients){
    
        if(IsClientInGame(client) == true){
            
            return true;
                
        }else{
                
            return false;
                
        }
        
    }else{
        
        return false;
        
    }
    
}

//i dunno, what the hell is this magic number mean, i DUNNO!
#define RADIOTEXT_MAGIC_NUMBER 3

stock bool:sendRadioTextTo(client, target, const String:sText[255], any:...){
    
    if(!isClientConnectedIngame(client)){
    
        return false;
    
    }
    
    new Handle:buffer = StartMessageOne("RadioText", target);
    
    if (buffer != INVALID_HANDLE) { 
        
        decl String:sClientName[255];
        decl String:sPlaceName[255];
        decl String:msg[255];
        GetClientName(client, sClientName, 255);
        GetEntPropString(client, Prop_Data, "m_szLastPlaceName", sPlaceName, 255);
        
        SetGlobalTransTarget(target);
        VFormat(msg, 255, sText, 4);    
        
        if(StrEqual(sPlaceName, "", false)){
        
            BfWriteByte(buffer, RADIOTEXT_MAGIC_NUMBER);
            BfWriteByte(buffer, client);
            BfWriteString(buffer, "#Game_radio");
            BfWriteString(buffer, sClientName);
            BfWriteString(buffer, msg);
        
        }else{
        
            BfWriteByte(buffer, RADIOTEXT_MAGIC_NUMBER);
            BfWriteByte(buffer, client);
            BfWriteString(buffer, "#Game_radio_location");
            BfWriteString(buffer, sClientName);
            BfWriteString(buffer, sPlaceName);
            BfWriteString(buffer, msg);
            
        }
        
        EndMessage(); 
        
        return true;
        
    }
    
    return false;

}

stock bool:sendRadioTextToAll(client, const String:sText[255], any:...){
    
    if(!isClientConnectedIngame(client)){
    
        return false;
    
    }
    
    for(new i = 1; i <= MaxClients; i++){
        
        if(IsClientInGame(i)){
            
            new Handle:buffer = StartMessageOne("RadioText", i);
    
            if (buffer != INVALID_HANDLE){ 
                
                decl String:sClientName[255];
                decl String:sPlaceName[255];
                decl String:msg[255];
                GetClientName(client, sClientName, 255);
                GetEntPropString(client, Prop_Data, "m_szLastPlaceName", sPlaceName, 255);
                
                SetGlobalTransTarget(i);
                VFormat(msg, 255, sText, 3);    
                
                if(StrEqual(sPlaceName, "", false)){
                
                    BfWriteByte(buffer, RADIOTEXT_MAGIC_NUMBER);
                    BfWriteByte(buffer, client);
                    BfWriteString(buffer, "#Game_radio");
                    BfWriteString(buffer, sClientName);
                    BfWriteString(buffer, msg);
                
                }else{
                
                    BfWriteByte(buffer, RADIOTEXT_MAGIC_NUMBER);
                    BfWriteByte(buffer, client);
                    BfWriteString(buffer, "#Game_radio_location");
                    BfWriteString(buffer, sClientName);
                    BfWriteString(buffer, sPlaceName);
                    BfWriteString(buffer, msg);
                    
                }
                    
                EndMessage(); 
                
            }
            
        }
    
    }
    
    return true;
   
}

stock bool:sendRadioTextToTeam(client, team, const String:sText[], any:...){
    
    if(!isClientConnectedIngame(client)){
    
        return false;
    
    }
    
    decl String:sClientName[255];
    decl String:sPlaceName[255];
    decl String:msg[255];
    GetClientName(client, sClientName, 255);
    GetEntPropString(client, Prop_Data, "m_szLastPlaceName", sPlaceName, 255);
    
    for(new i = 1; i <= MaxClients; i++){
        
        if(IsClientInGame(i) && GetClientTeam(i) == team){
            
            SetGlobalTransTarget(i);
            VFormat(msg, 255, sText, 3);    
            
            new Handle:buffer = StartMessageOne("RadioText", i);
    
            if (buffer != INVALID_HANDLE){ 
                
                if(StrEqual(sPlaceName, "", false)){
                
                    BfWriteByte(buffer, RADIOTEXT_MAGIC_NUMBER);
                    BfWriteByte(buffer, client);
                    BfWriteString(buffer, "#Game_radio");
                    BfWriteString(buffer, sClientName);
                    BfWriteString(buffer, msg);
                
                }else{
                
                    BfWriteByte(buffer, RADIOTEXT_MAGIC_NUMBER);
                    BfWriteByte(buffer, client);
                    BfWriteString(buffer, "#Game_radio_location");
                    BfWriteString(buffer, sClientName);
                    BfWriteString(buffer, sPlaceName);
                    BfWriteString(buffer, msg);
                    
                }
                    
                EndMessage(); 
                
            }
            
        }
    
    }
    
    return true;
   
}
u can see radio text from enemy by this, or dead guy`s radio or spectator`s radio lol

attached inc file has many stocks made by me include functions up there.
maybe u can find useful functions if u see it

this is default css radio text list.
it will automatically translated by client

#Cstrike_TitlesTXT_Cover_me
#Cstrike_TitlesTXT_You_take_the_point
#Cstrike_TitlesTXT_Hold_this_position
#Cstrike_TitlesTXT_Regroup_team
#Cstrike_TitlesTXT_Follow_me
#Cstrike_TitlesTXT_Taking_fire
#Cstrike_TitlesTXT_Go_go_go
#Cstrike_TitlesTXT_Team_fall_back
#Cstrike_TitlesTXT_Stick_together_team
#Cstrike_TitlesTXT_Get_in_position_and_wait
#Cstrike_TitlesTXT_Storm_the_front
#Cstrike_TitlesTXT_Report_in_team
#Cstrike_TitlesTXT_Roger_that
#Cstrike_TitlesTXT_Enemy_spotted
#Cstrike_TitlesTXT_Need_backup
#Cstrike_TitlesTXT_Sector_clear
#Cstrike_TitlesTXT_In_position
#Cstrike_TitlesTXT_Reporting_in
#Cstrike_TitlesTXT_Get_out_of_there
#Cstrike_TitlesTXT_Negative
#Cstrike_TitlesTXT_Enemy_down
Attached Files
File Type: inc stocklib.inc (40.6 KB, 228 views)
__________________

Last edited by javalia; 11-16-2010 at 15:08. Reason: fixed
javalia is offline
Seta00
The Seta00 user has crashed.
Join Date: Jan 2010
Location: Berlin
Old 11-07-2010 , 15:49   Re: [tut] how to use radio chat on css
Reply With Quote #2

Quote:
Originally Posted by javalia View Post
Code:
stock bool:isClientConnectedIngame(client){
    
    if(client > 0 && client <= MaxClients){
    
        if(IsClientInGame(client) == true){
            
            return true;
                
        }else{
                
            return false;
                
        }
        
    }else{
        
        return false;
        
    }
    
}

Code:
stock bool:isClientConnectedIngame(client){
    return (0 < client <= MaxClients) && IsClientInGame(client);    
}
Seta00 is offline
javalia
Senior Member
Join Date: May 2009
Location: korea, republic of
Old 11-16-2010 , 15:09   Re: [tut] how to use radio chat on css
Reply With Quote #3

updated.
__________________
javalia is offline
Reply



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 08:37.


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