Model broni
TypeR
16.04.2011
Witam, zadawałem to pytanie w innym temacie lecz odbiegał on od poprzedniego, a pozatym tutaj opisze to bardziej.
Chodzi mi dokładnie o model broni którą damy komendą np /ak (ak47)
Domyśliłem się ze ścieżki do modelów należy dopisać pod modułami:
Lecz co dalej? Co należy napisać aby zmienić model? Chodzi mi o zmiane WYŁĄCZNIE broni z komendy
Chodzi mi dokładnie o model broni którą damy komendą np /ak (ak47)
Domyśliłem się ze ścieżki do modelów należy dopisać pod modułami:
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <engine> #include <fakemeta> #include <fun> #include <hamsandwich> --->TUTAJ<---
Lecz co dalej? Co należy napisać aby zmienić model? Chodzi mi o zmiane WYŁĄCZNIE broni z komendy
Adminek AMXX.PL
16.04.2011
Daku
17.04.2011
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <engine> #include <fakemeta> #include <fun> #include <hamsandwich> new g_ak[id] new const AK[] = "models/ak/v_ak.mdl" public plugin_init() { register_plugin("COD : MW 2", "1.0 Alpha", "Daku") register_event("CurWeapon","CurrentWeapon","be","1=1") register_clcmd("say /ak", "daj_ak") } public plugin_precache() { precache_model(AK) } public client_putinserver(id) { g_ak[id]=false } publuc daj_ak(id) { g_ak[id] = true give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_AK47, 90) } public CurrentWeapon(id) { if (!is_user_alive(id)) return; new current_weapon = get_user_weapon(id) if(current_weapon == CSW_AK47 || g_ak[id]) { set_pev(id, pev_viewmodel2, AK) }else return }
powinno zadziałać
DarkGL
17.04.2011
up nie za ciekawy ten kod
#include <amxmodx> #include <fakemeta> #include <fakemeta_util> #include <hamsandwich> #define EXTRAOFFSET_WEAPONS 4 #define OFFSET_WEAPONTYPE 43 #define OFFSET_WPN_LINUX 4 #define OFFSET_WPN_WIN 41 #define get_weapon_id(%1) get_pdata_int(%1,OFFSET_WEAPONTYPE,EXTRAOFFSET_WEAPONS) new bool:g_ak[33] new const AK[] = "models/ak/v_ak.mdl" public plugin_init() { register_plugin("COD : MW 2", "1.0 Alpha", "Daku") static const g_szWpnEntNames[][] = { "", "weapon_p228", "", "weapon_scout", "weapon_hegrenade", "weapon_xm1014", "weapon_c4", "weapon_mac10", "weapon_aug", "weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_ump45", "weapon_sg550", "weapon_galil", "weapon_famas", "weapon_usp", "weapon_glock18", "weapon_awp", "weapon_mp5navy", "weapon_m249", "weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_flashbang", "weapon_deagle", "weapon_sg552", "weapon_ak47", "weapon_knife", "weapon_p90" } for (new i = 1; i < sizeof g_szWpnEntNames; i++) if (g_szWpnEntNames[i][0]) RegisterHam(Ham_Item_Deploy, g_szWpnEntNames[i], "ham_ItemDeploy_Post", 1) register_clcmd("say /ak", "daj_ak") } public plugin_precache() { precache_model(AK) } public client_putinserver(id) { g_ak[id]=false } public ham_ItemDeploy_Post(weapon_ent) { static owner owner = get_pdata_cbase(weapon_ent, OFFSET_WPN_WIN, OFFSET_WPN_LINUX); static weaponid weaponid = get_weapon_id(weapon_ent) if(weaponid == CSW_AK47 && g_ak[owner]){ set_pev(owner, pev_viewmodel2, AK) } } public daj_ak(id) { g_ak[id] = true fm_give_item(id, "weapon_ak47") }
TypeR
17.04.2011
Ok więc tak... Próbowałem i próbowalem. UDAŁO MI SIĘ tzn pojawiało się to co miało za AWP (bo nowy plugin robiłem) Lecz chodziło mi wyłącznie aby pojawiało się po wpisaniu komendy /xbow (po kupieniu normalnego AWP w sklepie miało być normalne AWP) A było niestety tak jak pisze... wszędzie pojawiał sie zamieniony model... ;/
Wklejam CAŁY kod
Wklejam CAŁY kod
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <fun> #include <engine> #include <hamsandwich> #define PLUGIN "crossbow" #define VERSION "1.0" #define AUTHOR "TypeR" new bool:podmien_model[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /xbow", "buy_xbow") register_event("CurWeapon", "CurWeapon", "be", "1=1") } public buy_xbow(id) { give_item(id, "weapon_awp") cs_set_user_bpammo(id, CSW_AWP, 30); podmien_model[id] = true } public plugin_precache() { precache_model("models/p_crossbow.mdl"); precache_model("models/v_crossbow.mdl"); precache_model("models/w_crossbow.mdl"); precache_model("models/crossbow_bolt.mdl"); precache_sound("weapons/xbow_fire1.wav"); precache_sound("weapons/xbow_hit1.wav"); precache_sound("weapons/xbow_hitbod1.wav"); precache_sound("weapons/xbow_reload1.wav"); } public CurWeapon(id) { new weapon = read_data(2); { if(weapon == CSW_AWP && podmien_model[id]) { entity_set_string(id, EV_SZ_viewmodel, "models/v_crossbow.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/p_crossbow.mdl") } } }
DarkGL
17.04.2011
dodaj
public client_connect(id){ podmien_model[id] = false }zamiast takiej metody polecalbym zapisywanie sobie numeru entity dawanej broni
TypeR
17.04.2011
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <fun> #include <engine> #include <hamsandwich> #define PLUGIN "crossbow" #define VERSION "1.0" #define AUTHOR "TypeR" new bool:podmien_model[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /xbow", "buy_xbow") register_event("CurWeapon", "CurWeapon", "be", "1=1") } public buy_xbow(id) { give_item(id, "weapon_awp") cs_set_user_bpammo(id, CSW_AWP, 30); } public client_connect(id){ podmien_model[id] = false } public plugin_precache() { precache_model("models/p_crossbow.mdl"); precache_model("models/v_crossbow.mdl"); precache_model("models/w_crossbow.mdl"); precache_model("models/crossbow_bolt.mdl"); precache_sound("weapons/xbow_fire1.wav"); precache_sound("weapons/xbow_hit1.wav"); precache_sound("weapons/xbow_hitbod1.wav"); precache_sound("weapons/xbow_reload1.wav"); } public CurWeapon(id) { new weapon = read_data(2); { if(weapon == CSW_AWP && podmien_model[id]) { entity_set_string(id, EV_SZ_viewmodel, "models/v_crossbow.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/p_crossbow.mdl") } } }
I dalej broń z sklepu jest ta sama co z komendy /xbow (ciągle kusza)
diablix
17.04.2011
Forward client_buy
Wykryj że jeżeli kupił ak to zmienna przyjmuje warnek false.
Użytkownik diablix edytował ten post 17.04.2011 19:02
Wykryj że jeżeli kupił ak to zmienna przyjmuje warnek false.
Użytkownik diablix edytował ten post 17.04.2011 19:02
TypeR
17.04.2011
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <fun> #include <engine> #include <hamsandwich> #define PLUGIN "crossbow" #define VERSION "1.0" #define AUTHOR "TypeR" new bool:podmien_model[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /xbow", "buy_xbow") register_event("CurWeapon", "CurWeapon", "be", "1=1") } public buy_xbow(id) { give_item(id, "weapon_awp") cs_set_user_bpammo(id, CSW_AWP, 30) podmien_model[id] = true } public client_connect(id) { podmien_model[id] = false } public plugin_precache() { precache_model("models/p_crossbow.mdl"); precache_model("models/v_crossbow.mdl"); precache_model("models/w_crossbow.mdl"); precache_model("models/crossbow_bolt.mdl"); precache_sound("weapons/xbow_fire1.wav"); precache_sound("weapons/xbow_hit1.wav"); precache_sound("weapons/xbow_hitbod1.wav"); precache_sound("weapons/xbow_reload1.wav"); } public CurWeapon(id) { new weapon = read_data(2); { if(weapon == CSW_AWP && podmien_model[id]) { entity_set_string(id, EV_SZ_viewmodel, "models/v_crossbow.mdl") entity_set_string(id, EV_SZ_weaponmodel, "models/p_crossbow.mdl") } } }
Co jest źle? Dalej 1 model zastąpia wszystkie AWP'ki
EDIT:
Spróbowałem sie podapsować do tego pluginu od DarkGL'a z AK i wyszło mi takie coś lecz dalej wszędzie jest jeden model a nie jest podzielone na to że w sklepie normalne AWP a za pomocą komendy Kusza
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <fun> #include <engine> #include <hamsandwich> #define EXTRAOFFSET_WEAPONS 4 #define OFFSET_WEAPONTYPE 43 #define OFFSET_WPN_LINUX 4 #define OFFSET_WPN_WIN 41 #define get_weapon_id(%1) get_pdata_int(%1,OFFSET_WEAPONTYPE,EXTRAOFFSET_WEAPONS) #define PLUGIN "crossbow" #define VERSION "1.0" #define AUTHOR "TypeR" new const V_MODEL[] = "models/v_crossbow.mdl" new bool:podmien_model[33] public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) static const g_szWpnEntNames[][] = { "", "weapon_p228", "", "weapon_scout", "weapon_hegrenade", "weapon_xm1014", "weapon_c4", "weapon_mac10", "weapon_aug", "weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_ump45", "weapon_sg550", "weapon_galil", "weapon_famas", "weapon_usp", "weapon_glock18", "weapon_awp", "weapon_mp5navy", "weapon_m249", "weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_flashbang", "weapon_deagle", "weapon_sg552", "weapon_ak47", "weapon_knife", "weapon_p90" } for (new i = 1; i < sizeof g_szWpnEntNames; i++) if (g_szWpnEntNames[i][0]) RegisterHam(Ham_Item_Deploy, g_szWpnEntNames[i], "ham_ItemDeploy_Post", 1) register_clcmd("say /xbow", "daj_kusze") } public plugin_precache() { precache_model(V_MODEL) } public client_putinserver(id) { podmien_model[id]=false } public ham_ItemDeploy_Post(weapon_ent) { static owner owner = get_pdata_cbase(weapon_ent, OFFSET_WPN_WIN, OFFSET_WPN_LINUX); static weaponid weaponid = get_weapon_id(weapon_ent) if(weaponid == CSW_AWP && podmien_model[owner]){ set_pev(owner, pev_viewmodel2, V_MODEL) } } public daj_kusze(id) { podmien_model[id] = true give_item(id, "weapon_awp") }
Dodano 20 kwiecień 2011 - 16:59:
Refresh
Użytkownik TypeR edytował ten post 20.04.2011 15:16