Surprise Ascot!
Join Date: May 2010
Location: Malaysia
|
05-22-2014
, 08:49
Re: Ham_item_deploy
|
#12
|
Hooking CurWeapon to set custom models is bad, it call too much, use Ham_Item_Deploy is better.
Changes all models
PHP Code:
#include <amxmodx> #include <hamsandwich> #include <fakemeta> #include <cstrike>
// Weapon entity names new const WEAPONENTNAMES[][] = { "", "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" } public plugin_init() { register_plugin("Weapon Model Replacement", "0.0.1", "ZP Dev") //register Ham_Item_Deploy forward for all CS weapons for (new i = 1; i < sizeof WEAPONENTNAMES; i++) { if (WEAPONENTNAMES[i][0]) RegisterHam(Ham_Item_Deploy, WEAPONENTNAMES[i], "OnItemDeployPost", 1); } }
// Ham Weapon Deploy Forward public OnItemDeployPost(ent) { // Get weapon's owner static id; id = fm_cs_get_weapon_ent_owner(ent); // Valid owner? if (!pev_valid(id)) return; // Replace weapon models with custom ones switch(cs_get_weapon_id(ent)) { case CSW_AK47: { //AK47 custom model set_pev(id, pev_viewmodel2, "models/v_custom.mdl") //v_ model set_pev(id, pev_weaponmodel2, "models/p_custom.mdl") //p_ model } case CSW_KNIFE: { //Knife custom model } } }
// Get Weapon Entity's Owner fm_cs_get_weapon_ent_owner(ent) { // Prevent server crash if entity's private data not initalized if (pev_valid(ent) != 2) return -1;
return get_pdata_cbase(ent, 41, 4); }
Code taken from ZP.
If you don't want to use loop for all weapon, then you can register 1 by 1.
PHP Code:
RegisterHam(Ham_Item_Deploy, "weapon_knife", "OnItemDeployPost", 1) RegisterHam(Ham_Item_Deploy, "weapon_ak47", "OnItemDeployPost", 1)
__________________
Team-MMG CS1.6 Servers:
✅ MultiMod -- 103.179.44.152:27016
✅ Zombie Plague -- 103.179.44.152:27015
✅ Zombie Escape -- 103.179.44.152:27017
✅ Klassik Kombat -- 103.179.44.152:27018
✅ Boss-Battle -- 103.179.44.152:27019
Last edited by yokomo; 05-22-2014 at 08:53.
|
|