PHP- Kodu:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <colorchat>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
new const T_ISYANCI[] = "models/player/t_isyanci/t_isyanci.mdl";
new const T_KATIL[] = "models/player/t_katil/t_katil.mdl";
new const T_DEFAULT[] = "models/player/t_default/t_default.mdl";
new const CT_DEFAULT[] = "models/player/ct_default/ct_default.mdl";
new const CT_KOMUTCU[] = "models/player/ct_komutcu/ct_komutcu.mdl";
new bool:blocked[33];
new basisyanci;
new komutcu;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /sec", "BasIsyanciSec")
register_forward(FM_Voice_SetClientListening, "FwdSetVoice");
register_event("HLTV","eNewRound","a","1=0","2=0")
register_event("DeathMsg","eDeath","a")
register_event( "TeamInfo", "eTeamChange", "a" );
}
public plugin_precache() {
precache_model(T_ISYANCI)
precache_model(T_DEFAULT)
precache_model(T_KATIL)
precache_model(CT_DEFAULT)
precache_model(CT_KOMUTCU)
}
public BasIsyanciSec(id) {
if(cs_get_user_team(id) == CS_TEAM_CT)
{
new menu = menu_create("\yBas Isyanci Sec","menu_handler")
new players[32],inum;
static tempid,szName[32],szID[6];
get_players(players,inum,"ace","TERRORIST")
for(new i;i<inum;i++) {
tempid = players[i];
get_user_name(tempid,szName,31)
num_to_str(tempid,szID,5)
menu_additem(menu,szName,szID)
}
menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
menu_display(id,menu,0)
}
return PLUGIN_HANDLED
}
public menu_handler(id,menu,item) {
if(item == MENU_EXIT) {
menu_destroy(menu)
return PLUGIN_HANDLED
}
new access,callback;
new name[32],data[6];
menu_item_getinfo(menu,item,access,data,5,name,31,callback)
new Uid = str_to_num(data);
new uname[32],admin[32];
get_user_name(id,admin,31)
if(is_user_connected(Uid)) {
get_user_name(Uid,uname,31)
basisyanci = Uid;
cs_set_user_model(Uid,"t_isyanci")
ColorChat(Uid,GREEN,"BAS ISYANCI SECILDIN: ^3+100 HP +1 Flashbang +Mikrofon")
ColorChat(0,GREEN,"^3%s: %s ^1Adli Oyuncuyu ^4Bas Isyanci ^1Olarak Secti !",admin,uname)
set_pev(Uid,pev_health,200.0)
give_item(Uid,"weapon_flashbang")
}
return PLUGIN_HANDLED
}
public eNewRound() {
new players[32],inum, name[32];
get_players(players,inum)
static id;
for(new i;i<inum;i++) {
id = players[i];
blocked[id] = true;
cs_reset_user_model(id)
if(get_user_team(id) == 2) {
cs_set_user_model(id,"ct_default")
}
if(get_user_team(id) == 1) {
cs_set_user_model(id,"t_default")
}
}
basisyanci = 0;
komutcu = 0;
new iPlayers[32], iNum;
get_players(iPlayers,iNum,"ace","TERRORIST");
if(iNum) {
komutcu = iPlayers[ ( iNum > 1 ) ? random( iNum ) : 0 ];
get_user_name(komutcu,name,31);
ColorChat(0,GREEN,"Secilen Komutcu: ^3%s",name)
ColorChat(komutcu,GREEN,"KOMUTCU SECILDIN")
cs_set_user_model(komutcu,"ct_komutcu")
}
}
public eDeath() {
new killer = read_data(1);
new victim = read_data(2);
if(get_user_team(killer) == 1 && get_user_team(victim) == 2 && basisyanci != killer) {
cs_set_user_model(killer,"t_katil")
}
}
public eTeamChange() {
new id = read_data(1);
if(is_user_bot(id)) return PLUGIN_CONTINUE
new team[12];
read_data(2,team,11);
switch( team[0] ) {
case 'C' :{
cs_set_user_model(id,"ct_default")
}
case 'T' :{
cs_set_user_model(id,"t_default")
}
}
return PLUGIN_CONTINUE
}
public FwdSetVoice(receiver, sender, listen) {
if(get_user_team(sender) != 2 && basisyanci != sender) {
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED
}
CT deki herkes mikrofon açabilir. Botlarla veya gerçek oyuncularla olmasının bir önemi yok. Birinde ct den rastgele bir komutçu seçebiliyorsa diğerinde de seçebilir demektir. Sen tek başına denediğinde seçiyor mu komutçu seni ?