tu macie sma ;f
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <fun> new WERSJA[] = "0.6" new MODEL_GRANAT_WSZYSCY[] = "models/pzb_dr/p_granat.mdl" new MODEL_GRANAT_GRACZ[] = "models/pzb_dr/v_granat.mdl" new MODEL_NOZ_WSZYSCY[] = "models/pzb_dr/p_noz.mdl" new MODEL_NOZ_GRACZ[] = "models/pzb_dr/v_noz.mdl" public plugin_init() { register_plugin("PzB DR", WERSJA, "Mis") register_event("ResetHUD", "vip", "b") register_event("ResetHUD", "admin", "b") register_event("ResetHUD", "gracz", "b") register_logevent("granat", 2, "1=Round_Start") register_clcmd("say /wersja", "wersja") register_forward(FM_SetModel,"granat_model") register_event("CurWeapon","granat_model_zmiana","be","1=1") register_forward(FM_SetModel,"noz_model") register_event("CurWeapon","noz_model_zmiana","be","1=1") return PLUGIN_CONTINUE } fnGreenChat( plr, const message[], {Float,Sql,Result,_}:... ) { static max_players, svc_saytext; if( !max_players ) max_players = get_maxplayers( ); if( !svc_saytext ) svc_saytext = get_user_msgid( "SayText" ); static msg[192]; msg[0] = 0x04; vformat( msg[1], sizeof msg - 2, message, 3 ); if( plr > 0 && plr <= max_players ) { message_begin( MSG_ONE, svc_saytext, { 0, 0, 0 }, plr ); write_byte( plr ); write_string( msg ); message_end( ); } else if( plr == 0 ) { for( new i = 1 ; i <= max_players ; i++ ) { if( is_user_connected( i ) ) { message_begin( MSG_ONE, svc_saytext, { 0, 0, 0 }, i ); write_byte( i ); write_string( msg ); message_end( ); } } } return 1; } public has_flags(id,string[]) { new ret=1 new byte new len = strlen(string) new p_flag = get_user_flags(id) for(new i=0;i<=len;i++) { if(string[i]>='a' && string[i]<='z') byte = (1<<(string[i]-'a')) else if(string[i]>='A' && string[i]<='Z') byte = (1<<(string[i]-'A')) else if(string[i]==',' && ret==1) return 1 else if(string[i]==',') ret=1 if(byte!=0 && !(p_flag & byte)) ret=0 byte=0 } return ret } public admin(id, level, cid) { if (has_flag(id,"d")) { new CsTeams:userTeam = cs_get_user_team(id) if (userTeam == CS_TEAM_T) { cs_set_user_model(id, "pzb_admte") } else if(userTeam == CS_TEAM_CT) { cs_set_user_model(id, "pzb_admct") } else { cs_reset_user_model(id) } } return PLUGIN_CONTINUE } public wersja(id) { fnGreenChat(id, "Serwer Uzywa Pluginu PzB DR w wersji %d by Mis", WERSJA) } public vip(id, level, cid) { if (has_flag(id,"b")) { new CsTeams:userTeam = cs_get_user_team(id) if (userTeam == CS_TEAM_T) { cs_set_user_model(id, "pzb_vipte") } else if(userTeam == CS_TEAM_CT) { cs_set_user_model(id, "pzb_vipct") } else { cs_reset_user_model(id) } } return PLUGIN_CONTINUE } public gracz(id, level, cid) { if (has_flag(id,"z")) { new CsTeams:userTeam = cs_get_user_team(id) if (userTeam == CS_TEAM_T) { cs_set_user_model(id, "pzb_grate") } else if(userTeam == CS_TEAM_CT) { cs_set_user_model(id, "pzb_gract") } else { cs_reset_user_model(id) } } return PLUGIN_CONTINUE } public granat(id) { new players[32], player, pnum; get_players(players, pnum, "a"); for(new i = 0; i < pnum; i++) { player = players[i]; if (has_flag(id,"a,b,z")) { give_item(player, "weapon_smokegrenade") } } } public granat_model(entity,const model[]) { if(!pev_valid(entity)) { return FMRES_IGNORED } if(equali(model,"models/w_smokegrenade.mdl")) { engfunc(EngFunc_SetModel,entity,MODEL_GRANAT_WSZYSCY) return FMRES_SUPERCEDE } return FMRES_IGNORED } public granat_model_zmiana(id) { new weapon_id = read_data(2) if(weapon_id == CSW_SMOKEGRENADE) { set_pev(id, pev_viewmodel, engfunc(EngFunc_AllocString, MODEL_GRANAT_GRACZ)) } } public noz_model(entity,const model[]) { if(!pev_valid(entity)) { return FMRES_IGNORED } if(equali(model,"models/w_knife.mdl")) { engfunc(EngFunc_SetModel,entity,MODEL_NOZ_WSZYSCY) return FMRES_SUPERCEDE } return FMRES_IGNORED } public noz_model_zmiana(id) { new weapon_id = read_data(2) if(weapon_id == CSW_KNIFE) { set_pev(id, pev_viewmodel, engfunc(EngFunc_AllocString, MODEL_NOZ_GRACZ)) } } public plugin_precache() { precache_model("models/player/pzb_vipct/pzb_vipct.mdl") precache_model("models/player/pzb_vipte/pzb_vipte.mdl") precache_model("models/player/pzb_admct/pzb_admct.mdl") precache_model("models/player/pzb_admte/pzb_admte.mdl") precache_model("models/player/pzb_gract/pzb_gract.mdl") precache_model("models/player/pzb_grate/pzb_grate.mdl") precache_model("models/player/pzb_vipte/pzb_vipteT.mdl") precache_model("models/player/pzb_grate/pzb_grateT.mdl") engfunc(EngFunc_PrecacheModel,MODEL_GRANAT_WSZYSCY) engfunc(EngFunc_PrecacheModel,MODEL_GRANAT_GRACZ) engfunc(EngFunc_PrecacheModel,MODEL_NOZ_WSZYSCY) engfunc(EngFunc_PrecacheModel,MODEL_NOZ_GRACZ) return PLUGIN_CONTINUE }