Mam do was 2 Pytanka
1. Co i gdzie trzeba dodac do nizej zamieszczonego Kodu tak aby pobieraly sie 3 pliki od Modelu Skina. Bo Plugin dziala lecz w pobieranych przeze mnei modelach sa 3 pliki. p_ak, v_ak, w_ak a w pluginie pobieraja sie 2 gdzie ebz trzeciego Ak47 sie buguje i graczy widac tak jak by nic nei trzymali a Ak47 znajduje sie na nogach gdzies.
2. Co i gdzie zmienic tak zeby Plugin mial zmiane skina nie na ak47 tylko na m4 np albo deagla , i inne bronie. na razie przemecze sie z tym pluginem w postaci kilku oluginow bo moj glowny plugin z 1 Menu na wszystkie skiny jest w trakcie przygotowan.
sma.
/* Plugin generated by AMXX-Studio */
#include < amxmodx >
#include < amxmisc >
#include < fakemeta >
#include < hamsandwich >
#define PLUGIN "Model Wybur"
#define VERSION "1.0"
#define AUTHOR "RoCk-MaN"
#define m_pPlayer 41
#define IsValidPrivateData(%0) ( pev_valid( %0 ) == 2 )
#define OFFSET_LINUX_WEAPONS 4
new const k_Models[ 2 ][ 2 ][ ] = {
{ "models/ak47/v_ak47.mdl", "models/v_ak47.mdl" },
{ "models/ak47/p_ak47.mdl", "models/p_ak47.mdl" },
};
new ak47_model[32];
new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /models", "display_model");
register_menu("ModelWybur", keys, "model_menu");
RegisterHam(Ham_Item_Deploy, "weapon_ak47", "Item_DeployKnife_Post", true);
}
public display_model(id) {
static menu[1024], iLen;
iLen = 0;
iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\r[\dReplays Models\r]^n^n");
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. %sstandard^n", ak47_model[ id ] == 0 ? "\d" : "\w");
ak47_model[ id ] == 0 ? (keys &= ~MENU_KEY_1) : (keys |= MENU_KEY_1);
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. %sNew^n", ak47_model[ id ] == 1 ? "\d" : "\w");
ak47_model[ id ] == 1 ? (keys &= ~MENU_KEY_2) : (keys |= MENU_KEY_2);
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "^n\r0. \wExit^n");
keys |= MENU_KEY_0;
show_menu(id, keys, menu, -1, "ModelWybur");
return PLUGIN_HANDLED;
}
public model_menu(id, key) {
static ent; ent = get_pdata_cbase(id, 373, 5);
switch(key) {
case 0: {
ak47_model[id] = 0;
if(pev_valid(ent)) ExecuteHamB(Ham_Item_Deploy, ent);
}
case 1: {
ak47_model[id] = 1;
if(pev_valid(ent)) ExecuteHamB(Ham_Item_Deploy, ent);
}
}
}
public client_connect(id) {
ak47_model[id] = 0;
}
public plugin_precache() {
new i;
for( i = 0; i < 2; i++ ) {
precache_model( k_Models[ 0 ][ i ] ) ;
precache_model( k_Models[ 1 ][ i ] ) ;
}
}
public Item_DeployKnife_Post(ent) {
if(!IsValidPrivateData( ent ))
return HAM_HANDLED;
static id; id = get_pdata_cbase(ent, m_pPlayer, OFFSET_LINUX_WEAPONS);
if(!pev_valid(id))
return HAM_HANDLED;
set_pev(id, pev_viewmodel2, k_Models[ 0 ][ ak47_model[id] ]);
set_pev(id, pev_weaponmodel2, k_Models[ 1 ][ ak47_model[id] ]);
return HAM_IGNORED;
}


Dodatki SourceMod




Moja zawartość
Mężczyzna