@Tasarimci v2
@Colditz
@Yek'-ta
Model değiştirme eklentisi üzerinde biraz değişiklik yapmak istedik.
CVAR komutu ekledik.
models/player dizinin kullanmak istemeyen için özel dizin tanımlama yapılmış.
Sunucuya yüklüyoruz, indirmeleri yapıyor. Clientten kontrol ettik indirmeler tam.
Fakat panelde .ZTMP dosyasi oluşmuyor ve sunucuda modeller aktif degil.
Bilen bir arkadaş kontrol edebilirse çok güzel olur, düzenlenirse paylaşılıp, herkesin yararına olur.
Kod: Tümünü seç
/*
amx_cvar vortex_model_plugin 1
amx_cvar vortex_model_change 1
amx_cvar vortex_model_admin 0
*/
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>
#include <nvault>
// PLUGIN BILGILERI
#define PLUGIN "Vortex_Player_Model"
#define AUTHOR "VORTEX"
#define VERSION "1.0"
// SERVER BILGILERI
#define SERVER "Vortex"
// *** CVAR ICIN HANGI DIZIN KULLANILSIN! ****
// *** CVAR ve DEFINE ayari MUTLAKA ayni olmalidir ***
// vortex_model_change cvar ayarina gore hangisini kullanacaksan
// o satirin yorumunu kaldir, diger satiri yorumla***
// vortex_model_change cvar ayari: 1 dolayisiyla DEF_DIZIN ve DEF_ADM kullanilmayacak**
//#define USE_DEF_DIZIN
#define USE_PRE_DIZIN
//#define USE_DEF_ADM //vortex_model_change 0 ve vortex_model_admin 1 ise yorum satirini sil
//#define USE_PRE_ADM // vortex_model_change 1 ve vortex_model_admin 1 ise yorum satirini sil
// CVAR ayarina + define ayarina bagli olarak yukariyi acar ve bu satir kullanilir.
// DEFAULT MODEL BILGILERI BURADAN DUZENLENIR
#if defined USE_DEF_DIZIN
#define DEFAULTDIZIN "player"
#define DEFAULTCT "default_ct"
#define DEFAULTTE "default_te"
#endif
#if defined USE_DEF_ADM
#define DEFAULTCTADM "default_ctadm"
#define DEFAULTTEADM "default_teadm"
#endif
// CVAR ayarina + define ayarina bagli olarak yukariyi acar ve bu satir kullanilir.
// OZEL DIZIN MODEL BILGILERI BURADAN DUZENLENIR
#if defined USE_PRE_DIZIN
#define PLAYERDIZIN "vortex/csgo_mode/player/team"
#define ADMINDIZIN "vortex/csgo_mode/player/admin"
#define PRECT "vortex_ct"
#define PRETE "vortex_te"
#endif
#if defined USE_PRE_ADM
#define PRECTADM "vortex_ct_adm"
#define PRETEADM "vortex_te_adm"
#endif
// NEW SET BILGILERI
new vortex_model_plugin;
new vortex_model_change;
new vortex_model_admin;
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Spawn, "player", "model_degistir", 1)
// CVAR AYARLARI
vortex_model_plugin = register_cvar("vortex_model_plugin","1") // 0- Eklenti kapatir 1- Eklenti Acar
vortex_model_change = register_cvar("vortex_model_change","1") // 0- Default Model Bilgileri Kullanilir 1- Ozel Dizin Bilgilerini Kullanir
vortex_model_admin = register_cvar("vortex_model_admin","0") // 0- Adminler icin ozel model yok 1- Adminler icin ozel model var
}
public plugin_precache()
{
#if !defined USE_DEF_DIZIN // Eger #define USE_DEF_DIZIN satiri yorumlu ise bu dizin kullanilacaktir!
// PRE MODELLERIN LISTESI
new pre_ctmodel[64];
new pre_temodel[64];
new pre_adm_ct[64];
new pre_adm_te[64];
formatex(pre_ctmodel, 63, "models/%s/%s.mdl",PLAYERDIZIN, PRECT)
formatex(pre_temodel, 63, "models/%s/%s.mdl",PLAYERDIZIN, PRETE)
formatex(pre_adm_ct, 63, "models/%s/%s.mdl",ADMINDIZIN, PRECTADM)
formatex(pre_adm_te, 63, "models/%s/%s.mdl",ADMINDIZIN, PRETEADM)
precache_model(pre_ctmodel)
precache_model(pre_temodel)
precache_model(pre_adm_ct)
precache_model(pre_adm_te)
#else // Eger #define USE_DEF_DIZIN satiri yorumlu degilse bu dizin kullanilacaktir!
// DEFAULT MODELLERIN LISTESI
new def_ctmodel[64];
new def_temodel[64];
new def_adm_ct[64];
new def_adm_te[64];
formatex(def_ctmodel, 63, "models/%s/%s/%s.mdl",DEFAULTDIZIN, DEFAULTCT, DEFAULTCT)
formatex(def_temodel, 63, "models/%s/%s/%s.mdl",DEFAULTDIZIN, DEFAULTTE, DEFAULTTE)
formatex(def_adm_ct, 63, "models/%s/%s/%s.mdl",DEFAULTDIZIN, DEFAULTCTADM, DEFAULTCTADM)
formatex(def_adm_te, 63, "models/%s/%s/%s.mdl",DEFAULTDIZIN, DEFAULTTEADM, DEFAULTTEADM)
precache_model(def_ctmodel)
precache_model(def_temodel)
precache_model(def_adm_ct)
precache_model(def_adm_te)
#endif
}
public model_degistir(id)
{
new takim = get_user_team(id)
if(get_pcvar_num(vortex_model_plugin)==1) // PLUGIN ACIK KAPALI
{
#if !defined USE_PRE_DIZIN // Eger #define USE_PRE_DIZIN satiri yorumlu ise bu dizin kullanilacaktir!
if (get_pcvar_num(vortex_model_change)==0) // MODEL DEGISTIRME TURU DEFAULT UZANTI ISE
{
if(get_pcvar_num(vortex_model_admin)==1) // ADMINLERIN MODEL DEGISTIRMESI -- DEFAULT UZANTI
{
#if defined USE_DEF_ADM
if (get_user_flags(id) & ADMIN_RESERVATION)
{
if(takim == 1)
{
cs_set_user_model(id, DEFAULTTEADM)
}
else if(takim == 2)
{
cs_set_user_model(id, DEFAULTCTADM)
}
}
#endif
if(takim ==1)
{
cs_set_user_model(id, DEFAULTTE)
}
else if(takim ==2)
{
cs_set_user_model(id, DEFAULTCT)
}
}
else // ADMIN PLAYER AYNI MODELI ALICAK -- DEFAULT UZANTI
{
if(takim == 1)
{
cs_set_user_model(id, DEFAULTTE)
}
else if(takim == 2)
{
cs_set_user_model(id, DEFAULTCT)
}
}
}
#else
if (get_pcvar_num(vortex_model_change)==1) // MODEL DEGISTIRME TURU OZEL UZANTI ISE
{
if(get_pcvar_num(vortex_model_admin)==1) // ADMINLERIN MODEL DEGISTIRMESI -- OZEL UZANTI
{
#if defined USE_PRE_ADM
if (get_user_flags(id) & ADMIN_RESERVATION)
{
if(takim == 1)
{
cs_set_user_model(id, PRETEADM)
}
else if(takim == 2)
{
cs_set_user_model(id, PRECTADM)
}
}
#endif
if(takim == 1)
{
cs_set_user_model(id, PRETE)
}
else if(takim == 2)
{
cs_set_user_model(id, PRECT)
}
}
else // ADMIN PLAYER AYNI MODELI ALICAK -- OZEL UZANTI
{
if(takim == 1)
{
cs_set_user_model(id, PRETE)
}
else if(takim == 2)
{
cs_set_user_model(id, PRECT)
}
}
}
#endif
}
}