[JB] Baş İsyancı ve Model Vermeleri
Merhaba arkadaşlar isteğimi açıklayayım,
CT'de menu olucak ve o menüde
"Mikrofonu Olan Baş İsyancıyı Seç" diye bir seçenek olucak seçtiğinde karşısına mahkumlardan yaşayanların listesini çıkarıcak ve seçtiği kişiye +100 can +1 tane flashbang (fb) + belirlediğim modeli vericek bir de ses olayı var servera mikrofon kapa tarzında pluginler olmayacak baş isyancı seçtiğim kişinin mikrofonu açılcak yani t'den mikrofon basabilecek onun dışında t'lerden kimse mikrofon basamasın adminlerde dahil.
T'lere girdiğinde benim yazdığım modeli vericek (players.model pluginini kullanmayacağım direk pluginin içinde bütün modelleri halledeceğiz arkadaşlar)
Seçtiğim baş isyancıya benim belirlediğim modeli vericek.
birde ct'yi öldüren t'ye benim belirlediğim modeli vericek
CT // MODELLERİ
CT'lerin hepsine benim belirlediğim modeli vercek yalnız el başladığında yani round bitti yeni el başladı ct'lerden rastgele birine benim belirlediğim modeli vericek ve say'dan "Ilk Komutcu Sen Secildin.Komutunu verebilirsin."
Öldükten sonra diğerleri ilk başladığı modelle devam edicek
bu arada yeni round başladığında bütün modelleri eski haline getiricek.
yardımcı olacak arkadaşlara şimdiden teşekkürlerimi sunarım, sağlıcakla
Cevap: [JB] Baş İsyancı ve Model Vermeleri
Her şeyi anladım bir tek şu ct modeli kısmını anlamadım. CT lerin tümüne mi özel model verilicek yoksa sadece komutçuya mı özel model vericez ?
Bir de teroristlerden seçtiğin baş isyancı, ct öldürürse modelinde değişiklik olucak mı ?
Cevap: [JB] Baş İsyancı ve Model Vermeleri
CTlerin hepsine ayarladığım modeli vercek el başında o modelleri olucak sonra rastgele ctden birini seçicek ve İlk Komutcu Sen Seçildin Ölene Kadar Komut Sende diyicek ve ona ayarladığım modeli vericek o seçilen ölüncede diğer ct'lere model vermesine gerek yok diğerleri o ilk ayarladığım genel ct modeli ile kalsınlar yani sadece el başlayınca ctden rastgele birine model vericek bu kadar hacım
Baş isyancı CT öldürürse modeli değişmesin
Cevap: [JB] Baş İsyancı ve Model Vermeleri
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 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_forward(FM_Voice_SetClientListening, "FwdSetVoice");
register_event("HLTV","eNewRound","a","1=0","2=0")
register_event("DeathMsg","eDeath","a")
}
public plugin_precache() {
precache_model(T_ISYANCI)
precache_model(T_KATIL)
precache_model(CT_DEFAULT)
precache_model(CT_KOMUTCU)
}
public BasIsyanciSec(id) {
new menu = menu_create("\yBas Isyanci Sec","menu_handler")
new players[32],inum;
static tempid,szName[32],szID[6];
get_players(players,inum,"ae","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,"Admin ^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")
}
}
basisyanci = 0;
komutcu = 0;
get_players(players,inum,"ae","CT")
komutcu = players[random(inum)];
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 DeathMsg() {
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 FwdSetVoice(receiver, sender, listen) {
if(komutcu != sender && basisyanci != sender) {
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED
}
Denemeye fırsatım olmadı, dene herhangi bir hata varsa düzeltirim.
Menuyu başka pluginden çalıştırmak için ilgili case'e;
callfunc_begin("BasIsyanciSec","bu_plugin.amxx")
callfunc_push_int(id)
callfunc_end();
Cevap: [JB] Baş İsyancı ve Model Vermeleri
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")
}
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,"ae","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;
get_players(players,inum,"ae","CT")
komutcu = players[random(inum)];
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 DeathMsg() {
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 FwdSetVoice(receiver, sender, listen) {
if(komutcu != sender && basisyanci != sender) {
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED
}
Sorunsuz çalışıyor fakat mesela kendimi ct atıyorum komutçu modeli geliyor sonra t atıyorum t default modeli gelmiyor anca sv_Restart 1 yapınca geliyor bir de ctden birini öldürüyorum t_katil modeli gelmiyor yani modellerin gelmesinde sıkıntı var hacım anlayacağın
---------- Alttaki Mesaj 27-04-13 Zamani 00:35 ---------- Önceki Mesaj 26-04-13 Zamani 23:42 ----------
PHP- Kodu:
L 04/27/2013 - 00:33:52: [AMXX] Displaying debug trace (plugin "osgelismismodel.amxx")
L 04/27/2013 - 00:33:52: [AMXX] Run time error 4: index out of bounds
L 04/27/2013 - 00:33:52: [AMXX] [0] osgelismismodel.sma::eNewRound (line 97)
Bir de bu debug var
Cevap: [JB] Baş İsyancı ve Model Vermeleri
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,"ae","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;
get_players(players,inum,"ae","CT")
komutcu = players[random_num(0,inum)];
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);
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")
}
}
}
public FwdSetVoice(receiver, sender, listen) {
if(komutcu != sender && basisyanci != sender) {
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED
}
Cevap: [JB] Baş İsyancı ve Model Vermeleri
PHP- Kodu:
L 04/27/2013 - 16:30:07: [CSTRIKE] Player out of range (0)
L 04/27/2013 - 16:30:07: [AMXX] Displaying debug trace (plugin "osgelismismodel.amxx")
L 04/27/2013 - 16:30:07: [AMXX] Run time error 10: native error (native "cs_set_user_model")
L 04/27/2013 - 16:30:07: [AMXX] [0] osgelismismodel.sma::eNewRound (line 102)
https://n1304.hizliresim.com/18/v/mhtlb.jpg
Bir de böyle bir hata verdi 15 tane pbbot atınca
Cevap: [JB] Baş İsyancı ve Model Vermeleri
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;
get_players(players,inum,"ace","CT")
komutcu = players[random_num(0,inum)];
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(komutcu != sender && basisyanci != sender) {
engfunc(EngFunc_SetClientListening, receiver, sender, 0);
return FMRES_SUPERCEDE;
}
return FMRES_IGNORED
}
Botları hesaba katmamıştım. Şimdi dene
Cevap: [JB] Baş İsyancı ve Model Vermeleri
New gamede denemek için pb bot attım hacı yoksa serverımda normal insanlarla deniyeceğim yani , birazdan seni bilgilendiririm.
---------- Alttaki Mesaj Zamani 19:29 ---------- Önceki Mesaj Zamani 19:23 ----------
PHP- Kodu:
L 04/27/2013 - 19:24:04: [CSTRIKE] Player out of range (0)
L 04/27/2013 - 19:24:04: [AMXX] Displaying debug trace (plugin "osgelismismodel.amxx")
L 04/27/2013 - 19:24:04: [AMXX] Run time error 10: native error (native "cs_set_user_model")
L 04/27/2013 - 19:24:04: [AMXX] [0] osgelismismodel.sma::eNewRound (line 102)
Bir de rastgele komutçu seçmiyor ct'de
Cevap: [JB] Baş İsyancı ve Model Vermeleri