Общие вопросы, Если у вас есть вопросы по скриптингу то задавайте здесь |
Здравствуйте, гость Вход | Регистрация
Наши новости:
|
|
|
Общие вопросы, Если у вас есть вопросы по скриптингу то задавайте здесь |
Fedcomp
|
7.3.2009, 16:30
Сообщение
|
|
|
НАРОД!!! КАК УЗНАТЬ ЕСТЬ ЛИ ФЛАГ b У ОПРЕДЕЛЕННОГО id???
|
|
|
|
CS-CS-CS
|
7.3.2009, 20:58
Сообщение
|
|
|
Помогите, пожалуйста. С меня +!
Незнаю куда писать. как сделать, чтобы RealLite HLGUard 2.6 банил через этот плагин? namebans.sma И если знаете, тоже самое, но ещё приспопобить под етот плагин ATAC и HackHunter_v1.3_Utimate_Anti_Cheat? Подскажите пожалуйста! |
|
|
|
TAKsa
|
8.3.2009, 13:02
Сообщение
|
|
|
CODE /* Wallclimb v1.0f by Python1320 Plagued Version 0.22 by Dabbi Allows Poison Zombie to Climb Walls in Zombie Plague [3.62] CVARS: zp_wallclimb 0 = Off / 1 = Hold USE / 2 = Hold JUMP and DUCK (Default 1) zp_wallclimb_nemesis 0 = Disable wallclimb during nemesis round. / 1 = Enable (Default 1) zp_wallclimb_survivor 0 = Disable wallclimb during survivor round. / 1 = Enable (Default 0) Changes: 0.22 Made the function wallclimb return a value. Put plugin version to a cvar. 0.21 Added cvars to enable disable wallclimb durin survivor/nemesis round 0.2 Added cvar to enable / disable Walllclimb Plugin 0.1 First release. */ #include <amxmodx> // #include <engine> #include <fakemeta> #include <cstrike> #include <zombieplague.inc> //#include <fakemeta_util> #define STR_T 33 // Stuff taken from fakemeta_util #define fm_get_user_button(%1) pev(%1, pev_button) /* stock fm_get_user_button(index) return pev(index, pev_button) */ #define fm_get_entity_flags(%1) pev(%1, pev_flags) /* stock fm_get_entity_flags(index) return pev(index, pev_flags) */ stock fm_set_user_velocity(entity, const Float:vector[3]) { set_pev(entity, pev_velocity, vector); return 1; } //End of stuff from fakemeta_util //new STR_T[32] new bool:g_WallClimb[33] new Float:g_wallorigin[32][3] new cvar_zp_wallclimb, cvar_zp_wallclimb_nemesis, cvar_zp_wallclimb_survivor new g_zclass_climb // Climb Zombie Atributes new const zclass_name[] = { "Climb Zombie" } // name new const zclass_info[] = { "HP-- Speed+ Jump+ Knockback++" } // description new const zclass_model[] = { "zombie_source" } // model new const zclass_clawmodel[] = { "v_knife_zombie.mdl" } // claw model const zclass_health = 1200 // health const zclass_speed = 220 // speed const Float:zclass_gravity = 0.8 // gravity const Float:zclass_knockback = 1.5 // knockback public plugin_init() { register_plugin("[ZP] Wallclimb ", "1.0", "WallClimb by Python1320/Cheap_Suit, Plagued by Dabbi") register_forward(FM_Touch, "fwd_touch") register_forward(FM_PlayerPreThink, "fwd_playerprethink") //register_forward(FM_PlayerPostThink, "fwd_playerpostthink") register_event("DeathMsg","EventDeathMsg","a") //register_cvar("zp_wallclimb_version", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY) cvar_zp_wallclimb = register_cvar("zp_wallclimb", "1") cvar_zp_wallclimb_survivor = register_cvar("zp_wallclimb_survivor", "0") cvar_zp_wallclimb_nemesis = register_cvar("zp_wallclimb_nemesis", "1") } public plugin_precache() { g_zclass_climb = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback) } public EventDeathMsg() { new id = read_data(2) g_WallClimb[id] = true return PLUGIN_HANDLED } public client_connect(id) { g_WallClimb[id] = true } public fwd_touch(id, world) { if(!is_user_alive(id) || !g_WallClimb[id] || !pev_valid(id)) return FMRES_IGNORED new player = STR_T if (!player) return FMRES_IGNORED new classname[STR_T] pev(world, pev_classname, classname, (STR_T)) if(equal(classname, "worldspawn") || equal(classname, "func_wall") || equal(classname, "func_breakable")) pev(id, pev_origin, g_wallorigin[id]) return FMRES_IGNORED } public wallclimb(id, button) { static Float:origin[3] pev(id, pev_origin, origin) if(get_distance_f(origin, g_wallorigin[id]) > 25.0) return FMRES_IGNORED // if not near wall if(fm_get_entity_flags(id) & FL_ONGROUND) return FMRES_IGNORED if(button & IN_FORWARD) { static Float:velocity[3] velocity_by_aim(id, 120, velocity) fm_set_user_velocity(id, velocity) } else if(button & IN_BACK) { static Float:velocity[3] velocity_by_aim(id, -120, velocity) fm_set_user_velocity(id, velocity) } return FMRES_IGNORED } public fwd_playerprethink(id) { if(!g_WallClimb[id] || !zp_get_user_zombie(id)) return FMRES_IGNORED if(zp_is_survivor_round() && get_pcvar_num(cvar_zp_wallclimb_survivor) == 0) return FMRES_IGNORED if(zp_is_nemesis_round() && get_pcvar_num(cvar_zp_wallclimb_nemesis) == 0) return FMRES_IGNORED new button = fm_get_user_button(id) if((get_pcvar_num(cvar_zp_wallclimb) == 1) && (button & IN_USE) && (zp_get_user_zombie_class(id) == g_zclass_climb)) //Use button = climb wallclimb(id, button) else if((get_pcvar_num(cvar_zp_wallclimb) == 2) && (button & IN_JUMP) && button & IN_DUCK && (zp_get_user_zombie_class(id) == g_zclass_climb)) //Jump + Duck = climb wallclimb(id, button) return FMRES_IGNORED } Вот исходник плагина для зомби мода. Этот плагин добавляет в игру нового зомби ,который умеет ползать по стенам. Все бы ничего ,но этот плагин несочетается с лазерными минами. Люди пожайлуста измените его. 1) что бы дратся можно было только левой кнопкой мыши. 2) а правой лазить по стенам. ЗЫ по дефолту лазить на "E" |
|
|
|
GUNNER
|
8.3.2009, 13:45
Сообщение
|
![]() |
|
Поблагодарили 1 раз
|
|
CS-CS-CS
|
8.3.2009, 21:57
Сообщение
|
|
|
Помогите, пожалуйста. С меня +! Незнаю куда писать. как сделать, чтобы RealLite HLGUard 2.6 банил через этот плагин? namebans.sma И если знаете, тоже самое, но ещё приспопобить под етот плагин ATAC и HackHunter_v1.3_Utimate_Anti_Cheat? Подскажите пожалуйста! Ну, подскажите PLZ!!! |
|
|
|
GODZILLA
|
8.3.2009, 22:56
Сообщение
|
![]() |
CS-CS-CS,
...amxmodx/configs/reallite_hlg/reallite_actions.cfg - открываешь,ищешь строчки типа таких - hlg_action "z:found:3" "addip 120.0 %i;kick #%u [RHLG] Banned: 2 hours. Reason: %y;wait;writeip" и мкняешь,в данном случае на это hlg_action "z:found:3" "amx_nban %i 120;kick #%u [RHLG] Banned: 2 hours. Reason: %y;wait;writeip" вроде так. и так везде,токо помни что перманент бан это 0!! Вот у меня вопрос. код Код /* Script generated by Pawn Studio */ #include <amxmodx> #include <amxmisc> #define PLUGIN "New Plugin" #define AUTHOR "Unknown" #define VERSION "1.0" new cvar1 new cvar2 public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) cvar1 = get_cvar_num("mp_autoteambalance") cvar2 = get_cvar_num("sv_alltalk") register_clcmd("amx_asd", "asd") } public asd() { if(cvar1 == 1 && cvar2 == 1) return PLUGIN_CONTINUE } при написании в консоле amx_asd будет выполнятся функция asd (ну это я так набросал быренький пример) так вот,меня интересует как надо как бы скрепить это Код if(cvar1 == 1 && cvar2 == 1) return PLUGIN_CONTINUE если cvar1(в данном случае mp_autoteambalance) равен 1 И cvar2(в данном случае это sv_alltalk) равен 1,то только тогда плагин будет выполняться --ДОБАВЛЕНО-- Блин,получилось :) а раньше чегото не комплился..
Отредактировал: GODZILLA, - 8.3.2009, 22:58
|
Поблагодарили 1 раз
|
|
CS-CS-CS
|
8.3.2009, 23:15
Сообщение
|
|
|
Спасиибо!
|
|
|
|
Empower
|
21.3.2009, 22:53
Сообщение
|
|
|
Вот исходник плагина для зомби мода. Этот плагин добавляет в игру нового зомби ,который умеет ползать по стенам. Все бы ничего ,но этот плагин несочетается с лазерными минами. Люди пожайлуста измените его. 1) что бы дратся можно было только левой кнопкой мыши. 2) а правой лазить по стенам. ЗЫ по дефолту лазить на "E" держи :) CODE #include <amxmodx>
#include <fakemeta> #include <hamsandwich> #include <zombieplague> #define STR_T 33 #define fm_get_user_button(%1) pev(%1, pev_button) #define fm_get_entity_flags(%1) pev(%1, pev_flags) stock fm_set_user_velocity(entity, const Float:vector[3]) { set_pev(entity, pev_velocity, vector); return 1; } new bool:g_WallClimb[33] new Float:g_wallorigin[32][3] new cvar_zp_wallclimb, cvar_zp_wallclimb_nemesis, cvar_zp_wallclimb_survivor new g_zclass_climb // Climb Zombie Atributes new const zclass_name[] = { "Climb Zombie" } // name new const zclass_info[] = { "HP-- Speed+ Jump+ Knockback++" } // description new const zclass_model[] = { "zombie_source" } // model new const zclass_clawmodel[] = { "v_knife_zombie.mdl" } // claw model const zclass_health = 1200 // health const zclass_speed = 220 // speed const Float:zclass_gravity = 0.8 // gravity const Float:zclass_knockback = 1.5 // knockback public plugin_init() { register_plugin("[ZP] Wallclimb ", "1.0", "WallClimb by Python1320/Cheap_Suit, Plagued by Dabbi") register_forward(FM_Touch, "fwd_touch") register_forward(FM_PlayerPreThink, "fwd_playerprethink") //register_forward(FM_PlayerPostThink, "fwd_playerpostthink") register_event("DeathMsg","EventDeathMsg","a") //register_cvar("zp_wallclimb_version", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY) cvar_zp_wallclimb = register_cvar("zp_wallclimb", "1") cvar_zp_wallclimb_survivor = register_cvar("zp_wallclimb_survivor", "0") cvar_zp_wallclimb_nemesis = register_cvar("zp_wallclimb_nemesis", "1") RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "Fwd_Secondary") } public plugin_precache() { g_zclass_climb = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback) } public EventDeathMsg() { new id = read_data(2) g_WallClimb[id] = true return PLUGIN_HANDLED } public client_connect(id) { g_WallClimb[id] = true } public fwd_touch(id, world) { if(!is_user_alive(id) || !g_WallClimb[id] || !pev_valid(id)) return FMRES_IGNORED new player = STR_T if (!player) return FMRES_IGNORED new classname[STR_T] pev(world, pev_classname, classname, (STR_T)) if(equal(classname, "worldspawn") || equal(classname, "func_wall") || equal(classname, "func_breakable")) pev(id, pev_origin, g_wallorigin[id]) return FMRES_IGNORED } public wallclimb(id, button) { static Float:origin[3] pev(id, pev_origin, origin) if(get_distance_f(origin, g_wallorigin[id]) > 25.0) return FMRES_IGNORED // if not near wall if(fm_get_entity_flags(id) & FL_ONGROUND) return FMRES_IGNORED if(button & IN_FORWARD) { static Float:velocity[3] velocity_by_aim(id, 120, velocity) fm_set_user_velocity(id, velocity) } else if(button & IN_BACK) { static Float:velocity[3] velocity_by_aim(id, -120, velocity) fm_set_user_velocity(id, velocity) } return FMRES_IGNORED } public fwd_playerprethink(id) { if(!g_WallClimb[id] || !zp_get_user_zombie(id)) return FMRES_IGNORED if(zp_is_survivor_round() && get_pcvar_num(cvar_zp_wallclimb_survivor) == 0) return FMRES_IGNORED if(zp_is_nemesis_round() && get_pcvar_num(cvar_zp_wallclimb_nemesis) == 0) return FMRES_IGNORED new button = fm_get_user_button(id) if((get_pcvar_num(cvar_zp_wallclimb) == 1) && (button & IN_ATTACK2) && (zp_get_user_zombie_class(id) == g_zclass_climb)) //Attack button = climb wallclimb(id, button) else if((get_pcvar_num(cvar_zp_wallclimb) == 2) && (button & IN_JUMP) && button & IN_DUCK && (zp_get_user_zombie_class(id) == g_zclass_climb)) //Jump + Duck = climb wallclimb(id, button) return FMRES_IGNORED } public Fwd_Secondary(id) { if(!g_WallClimb[id] || !zp_get_user_zombie(id)) return HAM_IGNORED; if(zp_is_survivor_round() && get_pcvar_num(cvar_zp_wallclimb_survivor) == 0) return HAM_IGNORED; if(zp_is_nemesis_round() && get_pcvar_num(cvar_zp_wallclimb_nemesis) == 0) return HAM_IGNORED; return HAM_SUPERCEDE; }
Отредактировал: Empower, - 22.3.2009, 0:01
|
|
|
|
Fedcomp
|
22.3.2009, 10:19
Сообщение
|
|
|
Как кикнуть игрока ещё во время коннекта к серверу (так сказать стадия полосок :biggrin:) и написать ему сообщение с причиной кика? (Как в amxx резервация слотов - kicked due to slot reservation)
|
|
|
|
Empower
|
22.3.2009, 11:08
Сообщение
|
|
|
Как кикнуть игрока ещё во время коннекта к серверу (так сказать стадия полосок :biggrin:) и написать ему сообщение с причиной кика? (Как в amxx резервация слотов - kicked due to slot reservation) так в чем собственно проблема? Код client_authorized(id)
{ //Zdes' svoi proverki userid = get_user_userid(id) server_cmd("kick #%d ^"kicked due to slot reservation^"", userid2) }
Отредактировал: Empower, - 22.3.2009, 11:10
|
Поблагодарили 3 раз
|
|
Fedcomp
|
22.3.2009, 15:32
Сообщение
|
|
|
ну Empower ты уж извиняй с client authorized я ещё не разбирался
|
|
|
|
Fedcomp
|
22.3.2009, 16:58
Сообщение
|
|
|
В amxx есть доп флаги помимо стандартных ADMIN_RESERVATION и т.д. а именно
Цитата ; m - произвольный уровень A (если вы используете нестандартные амх плагины) ; n - произвольный уровень B ; o - произвольный уровень C ; p - произвольный уровень D ; q - произвольный уровень E ; r - произвольный уровень F ; s - произвольный уровень G ; t - произвольный уровень H Как проверить у определенного ид наличие определенного флага? |
|
|
|
Empower
|
22.3.2009, 18:34
Сообщение
|
|
|
Цитата Как проверить у определенного ид наличие определенного флага? Код if(access(id,ADMIN_LEVEL_D))
Отредактировал: Empower, - 22.3.2009, 18:34
|
Поблагодарили 1 раз
|
|
GODZILLA
|
24.3.2009, 23:13
Сообщение
|
![]() |
Обьясните мне что такое
public client_PreThink - что делает? преДумывает? Вроде это похоже на Ham_Player_PreThink - вызывается когда движок получает информацию от игрока.. максимально число таких вызовов в секунду равно ФПС игрока Параметры: (id) |
|
|
|
arkdzo
|
25.3.2009, 20:49
Сообщение
|
|
|
Люди добрые плз хелп! Тут работы две строчки от силы,а я пока что осиный дуб в этом...
Есть плагин LaserMine так всё ок только если купить мину то под прицелом появляется надпись сколько у тебя есть мин и она НЕ ИСЧЕЗАЕТ! Только если умеряешь она исчезает! Плз сделайте чтобы она исчезала сразу! Или чтобы она была где-то в левом нижнем углу экрана!
Отредактировал: arkdzo, - 25.3.2009, 20:50
Прикрепленные файлы:
|
|
|
|
GODZILLA
|
25.3.2009, 21:08
Сообщение
|
![]() |
Это такой баг (по-моему) из-з hud_centerid 1
|
|
|
|
arkdzo
|
25.3.2009, 21:11
Сообщение
|
|
|
|
|
|
|
![]() ![]() |