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