Offline |
|
|
Csatlakozott:2013.03.10. 11:42 Hozzászólások:240 Megköszönt másnak: 52 alkalommal Megköszönték neki: 9 alkalommal
|
Oh köszi:) De nem tudom megoldani szóval kérném a segítséget:) #include <amxmodx> #include <amxmisc> #include <engine> #include <vault> #include <fun> #include <colorchat> #define PLUGIN "Knife Mod" #define VERSION "1.0" #define AUTHOR "spunko" #define TASK_INTERVAL 4.0 #define MAX_HEALTH 255 new knife_model[33] new g_Menu new CVAR_HIGHSPEED new CVAR_LOWSPEED new CVAR_LOWGRAV new CVAR_NORMGRAV new CVAR_HEALTH_ADD new CVAR_HEALTH_MAX new CVAR_DAMAGE public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event( "Damage", "event_damage", "be" ) register_event("CurWeapon","CurWeapon","be","1=1") g_Menu = register_menuid("Knife Mod") register_menucmd(g_Menu, 1023, "knifemenu") register_clcmd("say /knife", "display_knife") register_clcmd("say /kes", "display_knife") CVAR_HIGHSPEED = register_cvar("km_highspeed","340") CVAR_LOWSPEED = register_cvar("km_lowspeed","170") CVAR_HEALTH_ADD = register_cvar("km_addhealth", "3") CVAR_HEALTH_MAX = register_cvar("km_maxhealth", "75") CVAR_DAMAGE = register_cvar("km_damage", "2") CVAR_LOWGRAV = register_cvar("km_lowgravity" , "400") CVAR_NORMGRAV = get_cvar_pointer("sv_gravity") set_task(35 "kmodmsg", 0, _, _, "b") } public plugin_precache() { precache_model("models/acabdr_knife2015/v_gravity.mdl") precache_model("models/acabdr_knife2015/p_butcher.mdl") precache_model("models/acabdr_knife2015/v_sebzo.mdl") precache_model("models/acabdr_knife2015/p_machete.mdl") precache_model("models/acabdr_knife2015/v_bak.mdl") precache_model("models/acabdr_knife2015/p_bak.mdl") precache_model("models/acabdr_knife2015/v_gyors.mdl") precache_model("models/acabdr_knife2015/p_pocket.mdl") precache_model("models/acabdr_knife2015/v_knife.mdl") precache_model("models/acabdr_knife2015/p_knife.mdl") } public display_knife(id) { new menuBody[512] add(menuBody, 511, "\b|ACAB| Kések\w^n^n") add(menuBody, 511, "1. \rMachete \y(Sebzés/lassan)\w^n") add(menuBody, 511, "2. \rLopakodó \y(Nem trapolsz)\w^n") add(menuBody, 511, "3. \rGyors \y(Gyorsan futsz)\w^n") add(menuBody, 511, "4. \rNagy ugró \y(Alacsony gravitáció)\w^n") add(menuBody, 511, "5. \rAlap \y(Élet regen)\w^n^n") add(menuBody, 511, "0. \rKilépés^n") new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 ) show_menu(id, keys, menuBody, -1, "Knife Mod") } public knifemenu(id, key) { switch(key) { case 0: SetKnife(id , 4) case 1: SetKnife(id , 2) case 2: SetKnife(id , 3) case 3: SetKnife(id , 1) case 4: SetKnife(id , 0) default: return PLUGIN_HANDLED } SaveData(id) return PLUGIN_HANDLED } public SetKnife(id , Knife) { knife_model[id] = Knife new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo) if ( Weapon != CSW_KNIFE ) return PLUGIN_HANDLED new vModel[56],pModel[56] switch(Knife) { case 0: { format(vModel,55,"models/acabdr_knife2015/v_knife.mdl") format(pModel,55,"models/acabdr_knife2015/p_knife.mdl") } case 1: { format(vModel,55,"models/acabdr_knife2015/v_gravity.mdl") format(pModel,55,"models/acabdr_knife2015/p_butcher.mdl") } case 2: { format(vModel,55,"models/acabdr_knife2015/v_bak.mdl") format(pModel,55,"models/acabdr_knife2015/p_bak.mdl") } case 3: { format(vModel,55,"models/acabdr_knife2015/v_gyors.mdl") format(pModel,55,"models/acabdr_knife2015/p_pocket.mdl") } case 4: { format(vModel,55,"models/acabdr_knife2015/v_sebzo.mdl") format(pModel,55,"models/acabdr_knife2015/p_machete.mdl") } } entity_set_string(id, EV_SZ_viewmodel, vModel) entity_set_string(id, EV_SZ_weaponmodel, pModel) return PLUGIN_HANDLED; } public event_damage( id ) { new victim_id = id; if( !is_user_connected( victim_id ) ) return PLUGIN_CONTINUE new dmg_take = read_data( 2 ); new dmgtype = read_data( 3 ); new Float:multiplier = get_pcvar_float(CVAR_DAMAGE); new Float:damage = dmg_take * multiplier; new health = get_user_health( victim_id ); new iWeapID, attacker_id = get_user_attacker( victim_id, iWeapID ); if( !is_user_connected( attacker_id ) || !is_user_alive( victim_id ) ) { return PLUGIN_HANDLED } if( iWeapID == CSW_KNIFE && knife_model[attacker_id] == 4 ) { if( floatround(damage) >= health ) { if( victim_id == attacker_id ) { return PLUGIN_CONTINUE }else{ log_kill( attacker_id, victim_id, "knife", 0 ); } return PLUGIN_CONTINUE }else { if( victim_id == attacker_id ) return PLUGIN_CONTINUE fakedamage( victim_id, "weapon_knife", damage, dmgtype ); } } return PLUGIN_CONTINUE } public CurWeapon(id) { new Weapon = read_data(2) // Set Knife Model SetKnife(id, knife_model[id]) // Task Options if(knife_model[id] == 0 && !task_exists(id) && Weapon == CSW_KNIFE) set_task(TASK_INTERVAL , "task_healing",id,_,_,"b") else if(task_exists(id)) remove_task(id) // Abilities set_user_footsteps(id , ( (knife_model[id] == 2 && Weapon == CSW_KNIFE) ? 1 : 0) ) new Float:Gravity = ((knife_model[id] == 1 && Weapon == CSW_KNIFE)? get_pcvar_float(CVAR_LOWGRAV) : get_pcvar_float(CVAR_NORMGRAV)) / 800.0 set_user_gravity(id , Gravity) // Speed new Float:Speed if(Weapon != CSW_KNIFE || knife_model[id] < 3) return PLUGIN_CONTINUE else if(knife_model[id] == 3) Speed = get_pcvar_float(CVAR_HIGHSPEED) else if(knife_model[id] == 4) Speed = get_pcvar_float(CVAR_LOWSPEED) set_user_maxspeed(id, Speed) return PLUGIN_HANDLED } stock log_kill(killer, victim, weapon[],headshot) { user_silentkill( victim ); message_begin( MSG_ALL, get_user_msgid( "DeathMsg" ), {0,0,0}, 0 ); write_byte( killer ); write_byte( victim ); write_byte( headshot ); write_string( weapon ); message_end(); new kfrags = get_user_frags( killer ); set_user_frags( killer, kfrags++ ); new vfrags = get_user_frags( victim ); set_user_frags( victim, vfrags++ ); return PLUGIN_CONTINUE } public task_healing(id) { new addhealth = get_pcvar_num(CVAR_HEALTH_ADD) if (!addhealth) return new maxhealth = get_pcvar_num(CVAR_HEALTH_MAX) if (maxhealth > MAX_HEALTH) { set_pcvar_num(CVAR_HEALTH_MAX, MAX_HEALTH) maxhealth = MAX_HEALTH } new health = get_user_health(id) if (is_user_alive(id) && (health < maxhealth)) { set_user_health(id, health + addhealth) set_hudmessage(0, 255, 0, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.1, 4) show_hudmessage(id,"<< !!Élet REGEN!! >>") message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id) write_short(1<<10) write_short(1<<10) write_short(0x0000) write_byte(0) write_byte(200) write_byte(0) write_byte(75) message_end() } else { if (is_user_alive(id) && (health > maxhealth)) remove_task(id) } } public client_disconnect(id) { if(task_exists(id)) remove_task(id) } public kmodmsg() { ColorChat(0, BLUE, "^1|ACAB|: ^4Késekért: ^3/knife") } public client_authorized(id) { LoadData(id) } SaveData(id) { new authid[32] get_user_authid(id, authid, 31) new vaultkey[64] new vaultdata[64] format(vaultkey, 63, "KMOD_%s", authid) format(vaultdata, 63, "%d", knife_model[id]) set_vaultdata(vaultkey, vaultdata) } LoadData(id) { new authid[32] get_user_authid(id,authid,31) new vaultkey[64], vaultdata[64] format(vaultkey, 63, "KMOD_%s", authid) get_vaultdata(vaultkey, vaultdata, 63) knife_model[id] = str_to_num(vaultdata) } stock print_color(const id, const input[], any:...) { new count = 1, players[32] static msg[191] vformat(msg, 190, input, 3) replace_all(msg, 190, "!g", "^4") replace_all(msg, 190, "!y", "^1") replace_all(msg, 190, "!t", "^3") replace_all(msg, 190, "á", "á") replace_all(msg, 190, "é", "Ă©") replace_all(msg, 190, "í", "Ă") replace_all(msg, 190, "ó", "Ăł") replace_all(msg, 190, "ö", "ö") replace_all(msg, 190, "ő", "Ĺ‘") replace_all(msg, 190, "ú", "Ăş") replace_all(msg, 190, "ü", "ĂĽ") replace_all(msg, 190, "ű", "ű") replace_all(msg, 190, "Á", "Ă") replace_all(msg, 190, "É", "É") replace_all(msg, 190, "Í", "ĂŤ") replace_all(msg, 190, "Ó", "Ă“") replace_all(msg, 190, "Ö", "Ă–") replace_all(msg, 190, "Ő", "Ĺ") replace_all(msg, 190, "Ú", "Ăš") replace_all(msg, 190, "Ü", "Ăś") replace_all(msg, 190, "Ű", "Ĺ°") if (id) players[0] = id; else get_players(players, count, "ch") { for (new i = 0; i < count; i++) { if (is_user_connected(players[i])) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]) write_byte(players[i]) write_string(msg) message_end() } } } return PLUGIN_HANDLED }
/* * * Author: Cheesy Peteza * Date: 22-Apr-2004 (updated 2-March-2005) * * * Description: Enable bunny hopping in Counter-Strike. * * Cvars: * bh_enabled 1 to enable this plugin, 0 to disable. * bh_autojump If set to 1 players just need to hold down jump to bunny hop (no skill required) * bh_showusage If set to 1 it will inform joining players that bunny hopping has been enabled * and how to use it if bh_autojump enabled. * * Requirements: AMXModX 0.16 or greater * * */ #include <amxmodx> #include <engine> #inculde <chatcolor> #define FL_WATERJUMP (1<<11) // player jumping out of water #define FL_ONGROUND (1<<9) // At rest / on the ground public plugin_init() { register_plugin("Super Bunny Hopper", "1.2", "Cheesy Peteza") register_cvar("sbhopper_version", "1.2", FCVAR_SERVER) register_cvar("bh_enabled", "1") register_cvar("bh_autojump", "1") register_cvar("bh_showusage", "1") } public client_PreThink(id) { if (!get_cvar_num("bh_enabled")) return PLUGIN_CONTINUE entity_set_float(id, EV_FL_fuser2, 0.0) // Disable slow down after jumping if (!get_cvar_num("bh_autojump")) return PLUGIN_CONTINUE // Code from CBasePlayer::Jump (player.cpp) Make a player jump automatically if (entity_get_int(id, EV_INT_button) & 2) { // If holding jump new flags = entity_get_int(id, EV_INT_flags) if (flags & FL_WATERJUMP) return PLUGIN_CONTINUE if ( entity_get_int(id, EV_INT_waterlevel) >= 2 ) return PLUGIN_CONTINUE if ( !(flags & FL_ONGROUND) ) return PLUGIN_CONTINUE new Float:velocity[3] entity_get_vector(id, EV_VEC_velocity, velocity) velocity[2] += 250.0 entity_set_vector(id, EV_VEC_velocity, velocity) entity_set_int(id, EV_INT_gaitsequence, 6) // Play the Jump Animation } return PLUGIN_CONTINUE } public client_authorized(id) set_task(30.0, "showUsage", id) public showUsage(id) { if ( !get_cvar_num("bh_enabled") || !get_cvar_num("bh_showusage") ) return PLUGIN_HANDLED if ( !get_cvar_num("bh_autojump") ) { ChatColor(id, BLUE, "|ACAB|: ^4BHOPP:ON") } else { ChatColor(id, BLUE, "|ACAB|: ^4Az ugrás lenyomva tartással tudsz ^3BHOPPOLNI!") } return PLUGIN_HANDLED }
/*************************************************************************************************** AMX Parachute Version: 0.2.2 Author: KRoTaL 0.1 Release 0.1.1 Players can't buy a parachute if they already own one 0.1.2 Release for AMX MOD X 0.1.3 Minor changes 0.1.4 Players lose their parachute if they die 0.1.5 Added amx_parachute cvar 0.1.6 Changed set_origin to movetype_follow (you won't see your own parachute) 0.1.7 Added amx_parachute <name> | admins with admin level a get a free parachute 0.1.8 Fixed the give parachute command added a admin_parachute cvar to give admins with level A a free parachute 0.1.9 Added a sell command & added a cvar to get money back 0.2.0 Added para_free cvar to give everyone a free parachute 0.2.1 Fixed some minor bugs 0.2.2 Fixed the parachute remove bug 0.2.3 Fixed the alive bug Commands: say buy_parachute - buys a parachute amx_parachute <name>|@all - gives a player a free parachute Press +use to slow down your fall. Cvars: sv_parachute "1" - 0: disables the plugin 1: enables the plugin parachute_cost "1000" - cost of the parachute admin_parachute "0" - 0: admins with level A won't get a free parachute 1: admins with level A get a free parachute parachute_payback "75" - the amount you get back of the parachute in %(75/100*1000) = 750 para_free "0" - 0: no free parachute 1: free parachute for everyone Setup (AMXX 1.71): Install the amxx file. Enable engine and cstrike(amxx's modules.ini) Put the parachute.mdl file in the cstrike/models folder ***************************************************************************************************/ #include <amxmodx> #include <amxmisc> #include <engine> #include <cstrike> #define PLUGINNAME "AMXX Parachute" #define VERSION "0.2.3" #define AUTHOR "KRoT@L" new bool:has_parachute[33]; new para_ent[33]; new bool:had_parachute[33]; new bool:player_died[33]; public plugin_init() { register_plugin( PLUGINNAME, VERSION, AUTHOR ) register_dictionary( "parachute.txt" ) register_concmd( "say buy_parachute", "buy_parachute" ) register_concmd( "say sell_parachute", "sell_parachute" ) register_concmd( "amx_parachute", "give_parachute", ADMIN_LEVEL_A, "amx_parachute <name, @all>" ) register_cvar( "sv_parachute", "1" ) register_cvar( "parachute_cost", "1000" ) register_cvar( "parachute_payback", "75" ) register_cvar( "admin_parachute", "0" ) register_cvar( "para_free", "0" ) register_logevent( "event_roundstart", 2, "0=World triggered", "1=Round_Start" ) register_logevent( "event_roundend", 2, "0=World triggered", "1=Round_End" ) register_event( "ResetHUD", "event_resethud", "be" ) register_event( "DeathMsg", "death_event", "a" ) } public plugin_modules() { require_module( "engine" ) require_module( "cstrike" ) } public plugin_precache() { precache_model("models/parachute.mdl") } public client_connect(id) { if(para_ent[id] > 0) { remove_entity(para_ent[id]) } has_parachute[id] = false para_ent[id] = 0 } public event_roundstart() { new MaxPlayers = get_maxplayers(); for( new id; id < MaxPlayers; id++ ) { if( had_parachute[id] == true && player_died[id] == false ) { has_parachute[id] = true } } set_task( 3.0, "free_parachute" ); } public event_roundend() { new MaxPlayers = get_maxplayers(); for( new id; id < MaxPlayers; id++ ) { if( is_user_alive( id ) ) { if( has_parachute[id] == true ) { had_parachute[id] = true; }else{ had_parachute[id] = false; } player_died[id] = false; }else { if(para_ent[id] > 0) { remove_entity(para_ent[id]) } has_parachute[id] = false para_ent[id] = 0 player_died[id] = true; } } } public event_resethud( id ) { if(para_ent[id] > 0) { remove_entity(para_ent[id]) } has_parachute[id] = false para_ent[id] = 0 } public death_event() { new id = read_data(2) if(para_ent[id] > 0) { remove_entity(para_ent[id]) } has_parachute[id] = false para_ent[id] = 0 player_died[id] = true } public buy_parachute(id) { if(get_cvar_num( "sv_parachute" ) == 0) { client_print(id, print_chat, "%L", id, "para_disabled") return PLUGIN_HANDLED } if(has_parachute[id]) { client_print(id, print_chat, "%L", id, "para_has" ) return PLUGIN_HANDLED } new money = cs_get_user_money(id) new cost = get_cvar_num( "parachute_cost" ) if(money < cost) { client_print(id, print_chat, "%L", id, "para_money", cost) return PLUGIN_CONTINUE } cs_set_user_money(id, money - cost) client_print(id, print_chat, "%L", id, "para_buy" ) has_parachute[id] = true return PLUGIN_CONTINUE } public sell_parachute(id) { if (get_cvar_num("sv_parachute") == 0) { client_print(id, print_chat, "%L", id, "para_disabled") return PLUGIN_CONTINUE } if (has_parachute[id]) { if(para_ent[id] > 0) { if(is_valid_ent(para_ent[id])) { remove_entity(para_ent[id]) } } has_parachute[id] = false para_ent[id] = 0 new money = cs_get_user_money(id) new cost = get_cvar_num("parachute_cost") new payback = floatround(float(cost) * (get_cvar_float("parachute_payback") / 100)) cs_set_user_money(id, money + payback) client_print(id, print_chat, "%L", id, "para_sell", payback) } return PLUGIN_CONTINUE } public free_parachute() { new maxPlayers = get_maxplayers(); if(get_cvar_num( "sv_parachute" ) == 0) return PLUGIN_CONTINUE for( new i = 1; i <= maxPlayers; i++ ) { if( !is_user_connected( i ) ) return PLUGIN_CONTINUE if ( get_cvar_num( "para_free") == 1 ) { client_print( i, print_chat, "%L", LANG_PLAYER, "para_admin_free" ) has_parachute[i] = true return PLUGIN_CONTINUE } if ( get_cvar_num("admin_parachute") == 1 && get_user_flags( i ) && ADMIN_LEVEL_A ) { client_print( i, print_chat, "%L", LANG_PLAYER, "para_admin_free" ) has_parachute[i] = true return PLUGIN_CONTINUE } } return PLUGIN_CONTINUE } public give_parachute(id, level, cid) { if (!cmd_access(id, level, cid, 2 ) ) { return PLUGIN_CONTINUE } if (get_cvar_num("sv_parachute") == 0 ) { client_print(id, print_chat, "%L", id, "para_disabled") return PLUGIN_CONTINUE }else{ new arg[32] read_argv( 1, arg, 31 ) if (arg[0] == '@' && arg[1] == 'a') { new maxPlayers = get_maxplayers(); for( new i = 1; i <= maxPlayers; i++ ) { client_print( i, print_chat, "%L", LANG_PLAYER, "para_free_all" ) has_parachute[i] = true } return PLUGIN_CONTINUE } new player = cmd_target( id, arg, 4 ) if (has_parachute[id]) { client_print(id, print_chat, "%L", id, "para_has" ) return PLUGIN_CONTINUE } if( !player ) { client_print( id, print_chat, "%L", id, "para_no_player" ) return PLUGIN_CONTINUE }else{ client_print(player, print_chat, "%L", player, "para_give" ) has_parachute[player] = true return PLUGIN_CONTINUE } } return PLUGIN_CONTINUE } public client_PreThink(id) { if( get_cvar_num( "sv_parachute" ) == 0 ) { return PLUGIN_CONTINUE } if( !is_user_alive(id) ) { return PLUGIN_CONTINUE } if( has_parachute[id] ) { if (get_user_button(id) & IN_USE ) { if ( !( get_entity_flags(id) & FL_ONGROUND ) ) { new Float:velocity[3] entity_get_vector(id, EV_VEC_velocity, velocity) if(velocity[2] < 0) { if (para_ent[id] == 0) { para_ent[id] = create_entity("info_target") if (para_ent[id] > 0) { entity_set_model(para_ent[id], "models/parachute.mdl") entity_set_int(para_ent[id], EV_INT_movetype, MOVETYPE_FOLLOW) entity_set_edict(para_ent[id], EV_ENT_aiment, id) } } if (para_ent[id] > 0) { velocity[2] = (velocity[2] + 40.0 < -100) ? velocity[2] + 40.0 : -100.0 entity_set_vector(id, EV_VEC_velocity, velocity) if (entity_get_float(para_ent[id], EV_FL_frame) < 0.0 || entity_get_float(para_ent[id], EV_FL_frame) > 254.0) { if (entity_get_int(para_ent[id], EV_INT_sequence) != 1) { entity_set_int(para_ent[id], EV_INT_sequence, 1) } entity_set_float(para_ent[id], EV_FL_frame, 0.0) } else { entity_set_float(para_ent[id], EV_FL_frame, entity_get_float(para_ent[id], EV_FL_frame) + 1.0) } } } else { if (para_ent[id] > 0) { remove_entity(para_ent[id]) para_ent[id] = 0 } } } else { if (para_ent[id] > 0) { remove_entity(para_ent[id]) para_ent[id] = 0 } } } else if (get_user_oldbutton(id) & IN_USE) { if (para_ent[id] > 0) { remove_entity(para_ent[id]) para_ent[id] = 0 } } } return PLUGIN_CONTINUE }
_________________ NEW IP:
|
|