hlmod.hu https://hlmod.hu/ |
|
Rush https://hlmod.hu/viewtopic.php?f=10&t=18950 |
Oldal: 1 / 1 |
Szerző: | PiStA99 [ 2015.01.13. 23:01 ] |
Hozzászólás témája: | Rush |
Hali! Valaki eszt a rush-t meg tudja csinálni valaki hogy amikor át akar menni akkor Dobja vissza és ha át bugolt akkor meg ölje és hogy miden kör elején irja ki hogy CsapatSzin60 SárgaSzin Másodper múlva meget a Rush Köszönöm előre SMA Forráskód: [ Mindet kijelol ]
|
Szerző: | beatboxhunterr [ 2015.01.14. 10:39 ] |
Hozzászólás témája: | Re: Rush |
PiStA99 írta: Hali! Valaki eszt a rush-t meg tudja csinálni valaki hogy amikor át akar menni akkor Dobja vissza és ha át bugolt akkor meg ölje és hogy miden kör elején irja ki hogy CsapatSzin60 SárgaSzin Másodper múlva meget a Rush Köszönöm előre SMA Forráskód: [ Mindet kijelol ]#include <amxmodx> #include <engine> #include <fun> #include <cstrike> #include <amxmisc> #include <fakemeta> new Float:TEST_TIME=0.1 new Float:WARN_TIME=1.0 new Float:FLASH_TIME=0.8 #define MAX_ZONES 8 new MIN_PLAYERS=2 /*Dobre do testowania w mniej osob lub gdy chcesz by koniec rashu byl przy wiekszej liczbbie osob*/ #define TASK_ZONE 600743 #define TASK_LOOP 500743 #define TASK_VIEW 400743 #define TASK_INFO 300743 #define TASK_FLASH 200743 #define AUTHOR "Miczu" new mUsuwaniestrefy // Menu new mcbUsuwaniestrefy // Menu Callback new mZapisacstrefy // Menu new mcbZapisacstrefy // Menu Callback new mAntirushControlMenu // Menu new mcbAntirushControlMenu // Menu Callback //Uzylem generatora i takie malo eleganckie wyszlo new map_cors_edit[MAX_ZONES*6] new zones_edit new zone_editing=0 new map_editor new map_cors_file_line=127 new zone_incresment=10 new zone_coords_num=0 new zone_coords[3][13] = { "X Kordinata", "Y Kordinata", "Z Kordinata"} new editign=0 new edit_g_team[3] new round_start=0 new lines new gMsgScreenFade new rasher[33]=0 new raszer[33] new flashed[33]=0 new sounded[33]=0 new speed_limit[33]=0 new Float:g_time new g_team[3] new g_origin[3] new map_cors_pre=2 new map_cors_origin[MAX_ZONES*6] new slap new warn_control = 0 // miczu new zones = 0 new zone_color_aktiv[3] = { 0, 0, 255 } new zone_color_red[3] = { 0, 255, 0 } new zone_color_yellow[3] = { 255, 255, 0 } new spr_dot new actions[11][32] = { "barney/donthurtem.wav","nihilanth/nil_now_die.wav","hgrunt/c2a3_hg_laugh.wav","hgrunt/silence!.wav","hgrunt/silence!.wav","barney/whatsgoingon.wav","barney/rightway.wav","barney/nosir.wav","barney/openfire.wav","barney/stophere.wav","hgrunt/c2a2_hg_chat5a.wav"} public plugin_init() { register_plugin("Anti-Rush","2.5d",AUTHOR) log_amx(" <<Uruchomiono M_Antirusher 2.5d>>") register_dictionary("M_antirusher.txt") register_dictionary("common.txt") register_clcmd("say /rules","info") register_clcmd("say /antirusher_menu","amx_antirusher_menu") register_cvar("Antirusher", "2.5d",FCVAR_SERVER) register_cvar("amx_antirusher","1") register_cvar("amx_antirusher_sound","1") register_cvar("amx_antirusher_sound_mode","0") register_cvar("amx_antirusher_warn","1") register_cvar("amx_antirusher_slap","3") register_cvar("amx_antirusher_time","60.0") register_cvar("amx_antirusher_freq","0.1") register_cvar("amx_antirusher_action","1") register_cvar("amx_antirusher_cash","50") register_cvar("amx_antirusher_cash_end","2") register_cvar("amx_antirusher_immunity","0") register_cvar("amx_antirusher_zasady","1") register_cvar("amx_antirusher_people","2") register_event("HLTV","Event_StartRound","a","1=0","2=0") register_event("RoundTime","event_roundtime","bc") register_event("SendAudio", "bomb_planted", "a", "2&%!MRAD_BOMBPL") register_event("DeathMsg","DeathMsg","ade") register_event("CurWeapon","CurWeapon","be") gMsgScreenFade = get_user_msgid("ScreenFade") map_cors_pre = map_cors_present(map_cors_origin,g_team) TEST_TIME=get_cvar_float("amx_antirusher_freq") register_menucmd(register_menuid("Antirush Menu"), 1023, "Antirush_menu") register_menucmd(register_menuid("Punishment Menu"), 1023, "Punishment_menu") register_menucmd(register_menuid("Antirush Zone Creator"), 1023, "Antirush_Zone_Creator") register_menucmd(register_menuid("Edit Zone"), 1023, "edit_zone2") mAntirushControlMenu = menu_create("Antirush Control Menu", "mh_AntirushControlMenu") mcbAntirushControlMenu = menu_makecallback("mcb_AntirushControlMenu") menu_additem(mAntirushControlMenu, "Antirush cvar control", "ma_AntirushControlMenu", ADMIN_CVAR, mcbAntirushControlMenu) menu_additem(mAntirushControlMenu, "Antirush Punishments", "ma_AntirushControlMenu", ADMIN_CVAR, mcbAntirushControlMenu) menu_additem(mAntirushControlMenu, "Antirush Zone Creator", "ma_AntirushControlMenu", ADMIN_RCON, mcbAntirushControlMenu) mZapisacstrefy = menu_create("Zapisac strefy", "mh_Zapisacstrefy") mcbZapisacstrefy = menu_makecallback("mcb_Zapisacstrefy") menu_additem(mZapisacstrefy, "TAK", "ma_Zapisacstrefy", ADMIN_ALL, mcbZapisacstrefy) menu_additem(mZapisacstrefy, "NIE", "ma_Zapisacstrefy", ADMIN_ALL, mcbZapisacstrefy) mUsuwaniestrefy = menu_create("Usuwanie strefy", "mh_Usuwaniestrefy") mcbUsuwaniestrefy = menu_makecallback("mcb_Usuwaniestrefy") menu_additem(mUsuwaniestrefy, "TAK", "ma_Usuwaniestrefy", ADMIN_ALL, mcbUsuwaniestrefy) menu_additem(mUsuwaniestrefy, "NIE", "ma_Usuwaniestrefy", ADMIN_ALL, mcbUsuwaniestrefy) require_module("fakemeta") require_module("engine") require_module("fun") require_module("cstrike") return PLUGIN_CONTINUE } public plugin_precache() { spr_dot = precache_model("sprites/dot.spr") // potrzebne do robienia lini } /////////////////////////////////////////////////////////////////////// ///////// M_Antirusher Events ///////// //////////////////////////////////////////////////////////////////////// public client_connect(id){ free_the_man(id) //nie chcemy by ktos kto sie polaczy byl karany } //kiedy osoba co opuszczajac serwer miala kare //czyli gdy stary i nowy gracz beda mieli te same id public client_disconnect(id) { free_the_man(id) //tak na wszelki wypadek, ale mozna sobie odpuscic return PLUGIN_CONTINUE } public Event_StartRound(){ round_start++ MIN_PLAYERS = get_cvar_num("amx_antirusher_people") // zmiana people dziala na starcie rundy } public client_putinserver(id){ //tu informacja o rashu new arg[1] //Zoptymalizowane uzycie set_task arg[0]=id //Deklaracja 1 kumurki pamieci zamiast 4 i bez zmian z str-> num i na odwrot if (map_cors_pre && get_cvar_num("amx_antirusher")) set_task(45.0,"informclient",TASK_INFO+id,arg,1) } public bomb_planted() { //podlozono bombe remove_task(TASK_LOOP) //przerywa sprawdzanie rashu remove_task(TASK_VIEW) //przerywa wyswietlanie granic dla userow free_the_world() //mozna rashowac } public event_roundtime() { if (round_start<1) return PLUGIN_CONTINUE //takie zabezpieczenie by nie sprawdzalo po czasie rashu if (map_cors_pre && get_cvar_num("amx_antirusher")) { slap = floatround(get_cvar_num("amx_antirusher_slap")*(10.0*TEST_TIME)) // slapy biora zawsze tyle samo hp w przedziale czasu remove_task(TASK_LOOP) remove_task(TASK_VIEW) g_time = get_gametime() + get_cvar_float("amx_antirusher_time") set_task(2*TEST_TIME, "checkOrigin",TASK_LOOP) set_task(2*WARN_TIME, "rash_warn",TASK_VIEW) } return PLUGIN_CONTINUE } // public DeathMsg(){ new vid = read_data(2) //id trupa free_the_man(vid) //uwalnia trupa by zaczol runde z czystym kontem } ////////////////////////////////////////////////////////////////////// ///////// M_Antirusher Things ///////// ////////////////////////////////////////////////////////////////////// map_cors_present(maporigin[MAX_ZONES*6],team[3]) { new zonefile[256],zonefile2[256] get_configsdir(zonefile, 255) if(is_linux_server()){ format(zonefile2, 255, "%s/antirusher", zonefile) if(!(dir_exists(zonefile2))) mkdir (zonefile2) format(zonefile2, 255, "%s/antirusher/rush.cor", zonefile) } else{ format(zonefile2, 255, "%s\antirusher", zonefile) if(!(dir_exists(zonefile2))) mkdir (zonefile2) format(zonefile2, 255, "%s\antirusher\rush.cor", zonefile) } if (file_exists(zonefile2)){ new readdata[512] new currentmap[32] get_mapname(currentmap,31) new map[32], len new x11[16],x12[16],y11[16],y12[16],z11[16],z12[16] new x21[16],x22[16],y21[16],y22[16],z21[16],z22[16] new x31[16],x32[16],y31[16],y32[16],z31[16],z32[16] new x41[16],x42[16],y41[16],y42[16],z41[16],z42[16] new x51[16],x52[16],y51[16],y52[16],z51[16],z52[16] new x61[16],x62[16],y61[16],y62[16],z61[16],z62[16] new x71[16],x72[16],y71[16],y72[16],z71[16],z72[16] new x81[16],x82[16],y81[16],y82[16],z81[16],z82[16] for(new i=0; i < 128 && read_file(zonefile2,i,readdata,511,len); i++) { x11="";x12="";y11="";y12="";z11="";z12="" x21="";x22="";y21="";y22="";z21="";z22="" x31="";x32="";y31="";y32="";z31="";z32="" x41="";x42="";y41="";y42="";z41="";z42="" x51="";x52="";y51="";y52="";z51="";z52="" x61="";x62="";y61="";y62="";z61="";z62="" parse(readdata,team,2,map,31,x11,15,x12,15,y11,15,y12,15,z11,15,z12,15, x21,15,x22,15,y21,15,y22,15,z21,15,z22,15, x31,15,x32,15,y31,15,y32,15,z31,15,z32,15, x41,15,x42,15,y41,15,y42,15,z41,15,z42,15, x51,15,x52,15,y51,15,y52,15,z51,15,z52,15, x61,15,x62,15,y61,15,y62,15,z61,15,z62,15, x71,15,x72,15,y71,15,y72,15,z71,15,z72,15, x81,15,x82,15,y81,15,y82,15,z81,15,z82,15) lines=i if(equal(map,currentmap)) { maporigin[0] = str_to_num(x11) maporigin[1] = str_to_num(x12) maporigin[2] = str_to_num(y11) maporigin[3] = str_to_num(y12) maporigin[4] = str_to_num(z11) maporigin[5] = str_to_num(z12) maporigin[6] = str_to_num(x21) maporigin[7] = str_to_num(x22) maporigin[8] = str_to_num(y21) maporigin[9] = str_to_num(y22) maporigin[10] = str_to_num(z21) maporigin[11] = str_to_num(z22) maporigin[12] = str_to_num(x31) maporigin[13] = str_to_num(x32) maporigin[14] = str_to_num(y31) maporigin[15] = str_to_num(y32) maporigin[16] = str_to_num(z31) maporigin[17] = str_to_num(z32) maporigin[18] = str_to_num(x41) maporigin[19] = str_to_num(x42) maporigin[20] = str_to_num(y41) maporigin[21] = str_to_num(y42) maporigin[22] = str_to_num(z41) maporigin[23] = str_to_num(z42) maporigin[24] = str_to_num(x51) maporigin[25] = str_to_num(x52) maporigin[26] = str_to_num(y51) maporigin[27] = str_to_num(y52) maporigin[28] = str_to_num(z51) maporigin[29] = str_to_num(z52) maporigin[30] = str_to_num(x61) maporigin[31] = str_to_num(x62) maporigin[32] = str_to_num(y61) maporigin[33] = str_to_num(y62) maporigin[34] = str_to_num(z61) maporigin[35] = str_to_num(z62) maporigin[36] = str_to_num(x71) maporigin[37] = str_to_num(x72) maporigin[38] = str_to_num(y71) maporigin[39] = str_to_num(y72) maporigin[40] = str_to_num(z71) maporigin[41] = str_to_num(z72) maporigin[42] = str_to_num(x81) maporigin[43] = str_to_num(x82) maporigin[44] = str_to_num(y81) maporigin[45] = str_to_num(y82) maporigin[46] = str_to_num(z81) maporigin[47] = str_to_num(z82) map_cors_file_line=i for(new j=0;j<MAX_ZONES;j++){ i=j*6 if(((maporigin[1+i]-maporigin[0+i])>0)&&((maporigin[3+i]-maporigin[2+i])>0)&&((maporigin[5+i]-maporigin[4+i])>0)) zones++ } return 1 } if((len<15) && (map_cors_file_line>i)) map_cors_file_line=i } log_amx("%L",LANG_SERVER,"AR_NO_ZONE") if(lines+2<map_cors_file_line) map_cors_file_line=lines+2 //zapobiega zapisywaniu na 127 pozycji gdy nie ma wolnych lini na koncu <!-- s:) --><img src=\"{SMILIES_PATH}/icon_e_smile.gif\" alt=\":)\" title=\"mosoly\" /><!-- s:) --> return 0 } else log_amx("%L",LANG_SERVER,"AR_NO_FILE") g_team="XX" map_cors_file_line=0 //nie ma pluku rush,cor wiec niech zapisze w pierwszej lini return 0 } public info(id){ new anti_zasady = get_cvar_num("amx_antirusher_zasady") if(anti_zasady==1){ new map[4] get_mapname(map,3) // rozpoznawanie typu mapy na podstawie pierwszych 3 liter :p if (equal(map,"cs_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_CS_MAP") else if (equal(map,"de_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_DE_MAP") else if (equal(map,"fy_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_FY_MAP") else if (equal(map,"aim")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_AIM_MAP") else if (equal(map,"awp")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_AWP_MAP") else if (equal(map,"kz_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_KZ_MAP") else if (equal(map,"fun")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_FUN_MAP") else if (equal(map,"sur")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_SURF_MAP") else if (equal(map,"sj_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_SJ_MAP") else if (equal(map,"ka_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_KA_MAP") else if (equal(map,"he_")) client_print(id,print_chat, "%L",LANG_PLAYER,"AR_HE_MAP") } } public informclient(arg[1]){ // arg[0] to id ^^ if(is_user_connected(arg[0])) { // spradza czy gracz nadal jest na serwie client_print(arg[0],print_chat,"%L",LANG_PLAYER,"AR_INFO_WARN") client_print(arg[0],print_chat,"%L",LANG_PLAYER,"AR_INFO_CLIENT",get_cvar_float("amx_antirusher_time")) } } public checkOrigin() { // tu sprawdza czy rashujesz if (round_start<1) return if (get_gametime() > g_time) { free_the_world() return } new players[32], num,tt_num,ct_num get_players(players,num) for(new i=0;i<num;i++) { if(is_user_alive(players[i])) { if(cs_get_user_team(players[i])==CS_TEAM_T) tt_num++ else if(cs_get_user_team(players[i])==CS_TEAM_CT) ct_num++ } } if (tt_num<MIN_PLAYERS) { free_the_world() return } if (ct_num<MIN_PLAYERS) { free_the_world() return } get_players(players,num) set_task(TEST_TIME, "checkOrigin", TASK_LOOP) for(new i = 0; i < num; i++) { if(is_user_alive(players[i])) { if((equal(g_team,"T")&&(cs_get_user_team(players[i])==CS_TEAM_T))||(equal(g_team,"CT")&&(cs_get_user_team(players[i])==CS_TEAM_CT))||equal(g_team,"XX")) { get_user_origin(players[i],g_origin) if ((map_cors_origin[0] < g_origin[0] < map_cors_origin[1]) && (map_cors_origin[2] < g_origin[1] < map_cors_origin[3]) && (map_cors_origin[4] < g_origin[2] < map_cors_origin[5]) || (map_cors_origin[6] < g_origin[0] < map_cors_origin[7]) && (map_cors_origin[8] < g_origin[1] < map_cors_origin[9]) && (map_cors_origin[10] < g_origin[2] < map_cors_origin[11]) || (map_cors_origin[12] < g_origin[0] < map_cors_origin[13]) && (map_cors_origin[14] < g_origin[1] < map_cors_origin[15]) && (map_cors_origin[16] < g_origin[2] < map_cors_origin[17]) || (map_cors_origin[18] < g_origin[0] < map_cors_origin[19]) && (map_cors_origin[20] < g_origin[1] < map_cors_origin[21]) && (map_cors_origin[22] < g_origin[2] < map_cors_origin[23]) || (map_cors_origin[24] < g_origin[0] < map_cors_origin[25]) && (map_cors_origin[26] < g_origin[1] < map_cors_origin[27]) && (map_cors_origin[28] < g_origin[2] < map_cors_origin[29]) || (map_cors_origin[30] < g_origin[0] < map_cors_origin[31]) && (map_cors_origin[32] < g_origin[1] < map_cors_origin[33]) && (map_cors_origin[34] < g_origin[2] < map_cors_origin[35])){ punishPlayer(players[i]) raszer[players[i]]=1 } else{ free_the_man(players[i]) } } } } } public rash_warn(){ // tu sprawsza czy ma ci wyswietlic granice rashu if (get_gametime() > g_time){ return } if (get_cvar_num("amx_antirusher_warn")==0) return new players[32], num, tt_num, ct_num get_players(players,num) for(new i=0;i<num;i++) { if(is_user_alive(players[i])) { if(cs_get_user_team(players[i])==CS_TEAM_T) tt_num++ else if(cs_get_user_team(players[i])==CS_TEAM_CT) ct_num++ } } if (equal(g_team,"CT")){ if (tt_num<MIN_PLAYERS) return if (ct_num<MIN_PLAYERS) return } set_task(WARN_TIME, "rash_warn",TASK_VIEW) new orrigins[3] for(new j=0;j<num;j++){ if(raszer[players[j]]<1 && is_user_alive(players[j])) // jak juz raszuje to mozna graczowi odpuscic <!-- s:) --><img src=\"{SMILIES_PATH}/icon_e_smile.gif\" alt=\":)\" title=\"mosoly\" /><!-- s:) --> { if((equal(g_team,"T")&&(cs_get_user_team(players[j])==CS_TEAM_T))||(equal(g_team,"CT")&&(cs_get_user_team(players[j])==CS_TEAM_CT))||equal(g_team,"XX")) { get_user_origin(players[j],orrigins) for(new i=0;i<MAX_ZONES;i++){ if((map_cors_origin[0+i*6]-450 < orrigins[0] < map_cors_origin[0+i*6]) && (map_cors_origin[2+i*6]-100 < orrigins[1] < map_cors_origin[3+i*6]+100) && (map_cors_origin[4+i*6] < orrigins[2] < map_cors_origin[5+i*6])){ zone_warn(players[j],i,0,orrigins) } else if((map_cors_origin[1+i*6] < orrigins[0] < map_cors_origin[1+i*6]+450) && (map_cors_origin[2+i*6]-100 < orrigins[1] < map_cors_origin[3+i*6]+100) && (map_cors_origin[4+i*6] < orrigins[2] < map_cors_origin[5+i*6])){ zone_warn(players[j],i,1,orrigins) } if((map_cors_origin[0+i*6]-100 < orrigins[0] < map_cors_origin[0+i*6+1]+100) && (map_cors_origin[2+i*6]-450 < orrigins[1] < map_cors_origin[2+i*6]) && (map_cors_origin[4+i*6] < orrigins[2] < map_cors_origin[5+i*6])){ zone_warn(players[j],i,2,orrigins) } else if((map_cors_origin[0+i*6]-100 < orrigins[0] < map_cors_origin[0+i*6+1]+100) && (map_cors_origin[3+i*6] < orrigins[1] < map_cors_origin[3+i*6]+450) && (map_cors_origin[4+i*6] < orrigins[2] < map_cors_origin[5+i*6])){ zone_warn(players[j],i,3,orrigins) } } // nigdy nie bedziesz widzial przednia i tylna lub lewa i prawa sciane rownoczesnie wiec jest else } } } } /////////////////////////////////////////////////////////////////////////// ///////// M_Antirusher Punishments ///////// /////////////////////////////////////////////////////////////////////////// punishPlayer(id) { new action = 1 action = get_cvar_num("amx_antirusher_action") if ((get_cvar_num("amx_antirusher_immunity") == 1)&&(get_user_flags(id)&ADMIN_IMMUNITY)) { action = 0 } switch (action) { case 0:{ new name[32] get_user_name(id,name,31) server_cmd("amx_chat %L",LANG_SERVER,"AR_SRV_INFO", name) } case 1: fakedamage ( id, "rashing", slap*1.0,16384) case 2: user_silentkill(id) case 3: kickPlayer(id) case 4: banPlayer(id) case 5:{ if(speed_limit[id]==0){ speed_limit[id]=1 set_user_maxspeed(id,(get_user_maxspeed(id)/2.0)); } } case 6:{ if(flashed[id]==0){ flashed[id]=1 set_task(FLASH_TIME,"Flash",TASK_FLASH+id) } } case 7:{ new Float: velocity[3] new Float: DW //D?ugosc wektora entity_get_vector(id,EV_VEC_velocity,velocity) DW=vector_length ( velocity )+0.0001 velocity[0]=(velocity[0]/DW)*(-500.0) velocity[1]=(velocity[1]/DW)*(-500.0) if(velocity[2]<0) velocity[2]=velocity[2]*(-1.0)+15.0 //wyrzuca do gory entity_set_vector(id,EV_VEC_velocity,velocity) } case 8:{ rasher[id]=1 } case 9:{ aim_on_me(id) } case 10:{ ebay_time_to_pay(id) // ogladalem filmik w flashu i to chyba przez to :p } default:{ new name[32] get_user_name(id,name,31) server_cmd("amx_chat %L:p",LANG_SERVER,"AR_SRV_INFO", name) } } if (warn_control >(25/floatround(10.0*TEST_TIME))){ // jak dlugo siedzisz w granicy to ci pisze w czacie :p client_print(id, print_chat, "%L",LANG_PLAYER,"AR_RASH_WARN") warn_control=0;} warn_control+=1 if(get_cvar_num("amx_antirusher_sound")){ if(sounded[id]==0){ new sound_mode = get_cvar_num("amx_antirusher_sound_mode") if(sound_mode==0) client_cmd(id,"spk %s",actions[action]) else client_cmd(0,"spk %s",actions[action]) sounded[id]=1 } } } kickPlayer(id) { client_print(id, print_chat, "%L",LANG_PLAYER,"AR_RASH_KICK") client_print(id, print_chat, "%L",LANG_PLAYER,"AR_RASH_KICK") server_cmd("amx_kick #%d", id) } banPlayer(id) { client_print(id, print_chat, "%L",LANG_PLAYER,"AR_RASH_BAN") client_print(id, print_chat, "%L",LANG_PLAYER,"AR_RASH_BAN") server_cmd("amx_ban #%d 5 rush", id) } public CurWeapon(id){ if(speed_limit[id]==1) set_user_maxspeed(id,(get_user_maxspeed(id)/2.0)); // zmiana broni cie przyspieszy? nie ^^ } public Flash(id) { id-=TASK_FLASH if(flashed[id]){ set_task(FLASH_TIME,"Flash",TASK_FLASH+id) message_begin(MSG_ONE,gMsgScreenFade,{0,0,0},id) write_short( 1<<15 ) write_short( 1<<10 ) write_short( 1<<12 ) new x,y,z x= random_num(0,255) write_byte( x ) y= random_num(0,255) write_byte( y ) z= random_num(0,255) write_byte( z ) write_byte( 255 ) message_end() emit_sound(id,CHAN_BODY, "weapons/flashbang-2.wav", 1.0, ATTN_NORM, 0, PITCH_HIGH) } } public client_PreThink(id){ if (rasher[id]){ new button = entity_get_int(id, EV_INT_button) if ((button & IN_ATTACK2) || (button & IN_ATTACK)){ user_silentkill(id) } } } public aim_on_me(id){ new radom, radom2 radom = random_num(0,3) radom2 = random_num(1,6) new polecenie[64] switch (radom){ case 0:{ format(polecenie, 63, "+left;") } case 1:{ format(polecenie, 63, "+right;") } case 2:{ format(polecenie, 63, "+lookup;") } case 3:{ format(polecenie, 63, "+lookdown;") } } for (new i=0; i < radom2; i++) { add(polecenie, 63, "wait;") } switch (radom) { case 0:{ add(polecenie, 63, "-left;") } case 1:{ add(polecenie, 63, "-right;") } case 2:{ add(polecenie, 63, "-lookup;") } case 3:{ add(polecenie, 63, "-lookdown;") } } client_cmd(id,"%s",polecenie) } ebay_time_to_pay(id){ new cash=get_cvar_num("amx_antirusher_cash")*floatround(10.0*TEST_TIME) new cash2=get_cvar_num("amx_antirusher_cash_end") new money = cs_get_user_money(id) if (money-cash > 0)cs_set_user_money(id,money-cash) else switch(cash2){ case 0: cs_set_user_money(id,0) case 1:{ fakedamage ( id, "rashing", cash/25.0,16384) } case 2:{ fakedamage ( id, "rashing", cash/10.0,16384) } case 3:{ fakedamage ( id, "rashing", cash/5.0,16384) } case 4:{ fakedamage ( id, "rashing", cash/2.0,16384) } case 5:{ fakedamage ( id, "rashing", cash/1.0,16384) } } } public free_the_man(id){ sounded[id]=0 rasher[id]=0 flashed[id]=0 raszer[id]=0 if(speed_limit[id]==1){ set_user_maxspeed(id,(get_user_maxspeed(id)*2.0)) speed_limit[id]=0 } } public free_the_world(){ if(round_start<1) return round_start=0 new players[32],num get_players(players,num,"a") for(new i;i<num;i++){ free_the_man(players[i]) message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, players[i]) write_byte(players[i]) write_string("^x04 Lehet rusholni!") message_end() } } /////////////////////////////////////////////////////////////////////// ///////// M_Antirusher Menu's ///////// /////////////////////////////////////////////////////////////////////// public amx_antirusher_menu(id){ menu_display(id, mAntirushControlMenu, 0) } public mh_AntirushControlMenu(id, menu, item) { switch(item) { case 0: { showmenu(id) } case 1: { showmenu2(id) } case 2: { map_editor=id edit_g_team=g_team transfer_zones() zones_edit=zones if(zones>0) zone_editing=1 show_all_zones() remove_task(TASK_ZONE) set_task(0.2, "show_all_zones", TASK_ZONE, _, _, "b") showmenu3(id) } } } public ma_AntirushControlMenu(id) {} // bo z generatora amxx studio public mcb_AntirushControlMenu(id, menu, item) {} // i usuniecie nie daje dobrych efektow... public transfer_zones(){ for(new i=0;i<MAX_ZONES*6;i++){ map_cors_edit[i]=map_cors_origin[i] } } public showmenu(id) { new text[512] new keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)|(1<<8) new anti_on = get_cvar_num("amx_antirusher") //1 new anti_immu = get_cvar_num("amx_antirusher_immunity") //2 new Float: anti_time = get_cvar_float("amx_antirusher_time") //3 new anti_warn = get_cvar_num("amx_antirusher_warn") //4 new anti_sound = get_cvar_num("amx_antirusher_sound") //5 new anti_sound_mode = get_cvar_num("amx_antirusher_sound_mode") //6 new anti_zasady = get_cvar_num("amx_antirusher_zasady") //7 new people = get_cvar_num("amx_antirusher_people") //8 format(text, 511, "\yAntirush Menu - ^n\w1. amx_antirusher %i^n\w2. amx_antirusher_immunity %i^n\w3. amx_antirusher_time %.f^n\w4. amx_antirusher_warn %i^n\w5. amx_antirusher_sound %i^n\w6. amx_antirusher_sound_mode %i^n\w7. amx_antirusher_zasady %i^n\w8. amx_antirusher_people %i^n^n\w9. %L",anti_on, anti_immu, anti_time, anti_warn, anti_sound, anti_sound_mode,anti_zasady,people,LANG_SERVER,"EXIT") show_menu(id, keys, text) return PLUGIN_HANDLED } public Antirush_menu(id, key) { switch(key) { case 0:{ new anti_on = get_cvar_num("amx_antirusher") if (anti_on==0) set_cvar_num("amx_antirusher",1) else set_cvar_num("amx_antirusher",0) } case 1:{ new anti_immu = get_cvar_num("amx_antirusher_immunity") if (anti_immu==0) set_cvar_num("amx_antirusher_immunity",1) else set_cvar_num("amx_antirusher_immunity",0) } case 2:{ new Float: anti_time = get_cvar_float("amx_antirusher_time") if (anti_time < (get_cvar_float("mp_roundtime")*60.0)) anti_time += 5.0 else anti_time= 10.0 set_cvar_float("amx_antirusher_time",anti_time) } case 3:{ new anti_warn = get_cvar_num("amx_antirusher_warn") if (anti_warn==0) set_cvar_num("amx_antirusher_warn",1) else set_cvar_num("amx_antirusher_warn",0) } case 4:{ new anti_sound = get_cvar_num("amx_antirusher_sound") if (anti_sound==0) set_cvar_num("amx_antirusher_sound",1) else set_cvar_num("amx_antirusher_sound",0) } case 5:{ new anti_sound_mode = get_cvar_num("amx_antirusher_sound_mode") if (anti_sound_mode==0) set_cvar_num("amx_antirusher_sound_mode",1) else set_cvar_num("amx_antirusher_sound_mode",0) } case 6:{ new anti_zasady = get_cvar_num("amx_antirusher_zasady") if (anti_zasady==0) set_cvar_num("amx_antirusher_zasady",1) else set_cvar_num("amx_antirusher_zasady",0) } case 7:{ new people = get_cvar_num("amx_antirusher_people") if (people<16) set_cvar_num("amx_antirusher_people",people+1) else set_cvar_num("amx_antirusher_people",0) } case 8:{ menu_display(id, mAntirushControlMenu, 0) return PLUGIN_HANDLED } } showmenu(id) return PLUGIN_HANDLED } public showmenu2(id) { new keys new text[512] new anti_action = get_cvar_num("amx_antirusher_action") new anti_cash = get_cvar_num("amx_antirusher_cash")*10 new anti_cash_end = get_cvar_num("amx_antirusher_cash_end") new Float: anti_freq = get_cvar_float("amx_antirusher_freq") new anti_slap = get_cvar_num("amx_antirusher_slap")*10 switch(anti_action) { case 1: { format(text,511,"\yPunishment Menu - ^n\w1. amx_antirusher_action %i^n\w2. amx_antirusher_slap %i^n\w^n\w4. amx_antirusher_freq %.2f ^n\w ",anti_action,anti_slap,anti_freq) keys = (1<<0)|(1<<1)|(1<<3)|(1<<8) } case 10: { format(text,511,"\yPunishment Menu - ^n\w1. amx_antirusher_action %i^n\w2. amx_antirusher_cash %i^n\w3. amx_antirusher_cash_end %i^n\w4. amx_antirusher_freq %.2f^n\w ",anti_action, anti_cash, anti_cash_end,anti_freq) keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<8) } default: { format(text,511,"\yPunishment Menu - ^n\w1. amx_antirusher_action %i^n\w ^n\w ^n\w4. amx_antirusher_freq %.2f^n\w ",anti_action,anti_freq) keys = (1<<0)|(1<<3)|(1<<8) } } new text2[512] switch(anti_action) { case 0: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_WARN",LANG_SERVER,"EXIT") case 1: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_HP",LANG_SERVER,"EXIT") case 2: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_KILL",LANG_SERVER,"EXIT") case 3: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_KICK",LANG_SERVER,"EXIT") case 4: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_BAN",LANG_SERVER,"EXIT") case 5: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_SLOW",LANG_SERVER,"EXIT") case 6: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_BLIND",LANG_SERVER,"EXIT") case 7: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_FFILD",LANG_SERVER,"EXIT") case 8: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_OFIRE",LANG_SERVER,"EXIT") case 9: format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_BAIM",LANG_SERVER,"EXIT") case 10:format(text2,511, "^n\w %L ^n\w %L ^n\w9. %L",LANG_SERVER,"AR_ACTION_CASH",LANG_SERVER,"AR_ACTION_CASH2",LANG_SERVER,"EXIT") default:format(text2,511, "^n\w %L ^n\w ^n\w9. %L",LANG_SERVER,"AR_ACTION_NEW",LANG_SERVER,"EXIT") } add(text,511,text2) show_menu(id, keys, text) return PLUGIN_HANDLED } public Punishment_menu(id, key) { new anti_action = get_cvar_num("amx_antirusher_action") switch(key) { case 0: { if(anti_action<10) anti_action +=1 else anti_action=0 set_cvar_num("amx_antirusher_action",anti_action) } case 1: { if(anti_action==1) { new anti_slap = get_cvar_num("amx_antirusher_slap") if(anti_slap<10) anti_slap +=1 else anti_slap=0 set_cvar_num("amx_antirusher_slap",anti_slap) } else if(anti_action==10) { new anti_cash = get_cvar_num("amx_antirusher_cash") if(anti_cash<100) anti_cash +=10 else if(anti_cash<500) anti_cash +=25 else anti_cash=0 set_cvar_num("amx_antirusher_cash",anti_cash) } } case 2: { new anti_cash_end = get_cvar_num("amx_antirusher_cash_end") if(anti_cash_end<5) anti_cash_end +=1 else anti_cash_end=0 set_cvar_num("amx_antirusher_cash_end",anti_cash_end) } case 3: { new Float: anti_freq = get_cvar_float("amx_antirusher_freq") if(anti_freq<1.0) anti_freq +=0.100001 // ta jedynka na koncu bo zamiast wyswietalc 0.90000 wyswietlalo 0.89999 wiec dalem zaokraglenie do 0.xx i to na koniec :f else if (anti_freq<8.0) anti_freq +=0.5 else anti_freq=0.1 set_cvar_float("amx_antirusher_freq",anti_freq) } case 8: { menu_display(id, mAntirushControlMenu, 0) return PLUGIN_HANDLED } } showmenu2(id) return PLUGIN_HANDLED } public showmenu3(id) { editign=0 new text[512] new keys if(zones_edit==0){ keys = (1<<0)|(1<<4)|(1<<6)|(1<<7)|(1<<8) format(text, 511, "\yAntirush Zone Creator - ^n^n\w%L: \r%i^n\w1.%L: %s ^n^n ^n^n^n\y5. %L ^n\r7. %L^n\w8. %L ^n\w9. %L",LANG_SERVER,"AR_ZONE_NUM",zones_edit,LANG_SERVER,"AR_ZONE_TEAM",edit_g_team,LANG_SERVER,"AR_ZONE_NEW",LANG_SERVER,"AR_ZONE_DEL",LANG_SERVER,"AR_ZONE_SAVE",LANG_SERVER,"EXIT") } else if(zones_edit>0){ keys = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<6)|(1<<7)|(1<<8) format(text, 511, "\yAntirush Zone Creator - ^n^n\w%L: \r%i^n\w1.%L: %s ^n^n\w2. %L \r%i^n \w3. <- %L 4. -> %L^n^n\y5. %L ^n\r7. %L^n\w8. %L ^n\w9. %L",LANG_SERVER,"AR_ZONE_NUM",zones_edit,LANG_SERVER,"AR_ZONE_TEAM",edit_g_team,LANG_SERVER,"AR_ZONE_EDIT",zone_editing,LANG_SERVER,"BACK",LANG_SERVER,"MORE",LANG_SERVER,"AR_ZONE_NEW",LANG_SERVER,"AR_ZONE_DEL",LANG_SERVER,"AR_ZONE_SAVE",LANG_SERVER,"EXIT") } show_menu(id, keys, text) return PLUGIN_HANDLED } public Antirush_Zone_Creator(id, key) { if(map_editor!=id){ showmenu(id) return PLUGIN_HANDLED } switch(key) { case 0:{ if (equal(edit_g_team,"XX")) edit_g_team="CT" else if (equal(edit_g_team,"CT")) edit_g_team="T" else edit_g_team="XX" } case 1: { zone_incresment=10 edit_zone(id) return PLUGIN_HANDLED } case 2:{ if(zone_editing>1) zone_editing-- } case 3:{ if(zone_editing<zones_edit) zone_editing++ } case 4:{ if(zones_edit<(MAX_ZONES)){ create_zone(id) zone_editing=zones_edit zone_incresment=10 edit_zone(id) return PLUGIN_HANDLED } else{ client_print(id, print_chat,"%L",LANG_SERVER,"AR_ZONE_MAX") } } case 6:{ if(zone_editing>0){ menu_display(id, mUsuwaniestrefy, 0) return PLUGIN_HANDLED } else client_print(id, print_chat,"%L",LANG_SERVER,"AR_ZONE_ZERO") } case 7:{ menu_display(id, mZapisacstrefy, 0) return PLUGIN_HANDLED } case 8:{ amx_antirusher_menu(id) remove_task(TASK_ZONE) return PLUGIN_HANDLED } } showmenu3(id) return PLUGIN_HANDLED } public create_zone(id){ new origins[3] get_user_origin(id,origins,0) map_cors_edit[0+zones_edit*6]=origins[0]-32 map_cors_edit[1+zones_edit*6]=origins[0]+32 map_cors_edit[2+zones_edit*6]=origins[1]-32 map_cors_edit[3+zones_edit*6]=origins[1]+32 map_cors_edit[4+zones_edit*6]=origins[2]-32 map_cors_edit[5+zones_edit*6]=origins[2]+32 zones_edit++ } public mh_Zapisacstrefy(id, menu, item) { if(item==0){ remove_task(TASK_ZONE) amx_antirusher_menu(id) map_cors_origin=map_cors_edit zones=zones_edit g_team=edit_g_team if(zones>0) map_cors_pre=1 else map_cors_pre=0 write_to_file() } else if(item==1) showmenu3(id) } public ma_Zapisacstrefy(id) {} public mcb_Zapisacstrefy(id, menu, item) {} public mh_Usuwaniestrefy(id, menu, item) { if(item==0){ amx_antirusher_menu(id) delete_zone(zone_editing) if((zone_editing-1)>=(zones_edit-1)) zone_editing = zones_edit-1 zones_edit-- showmenu3(id) } else if(item==1) showmenu3(id) } public ma_Usuwaniestrefy(id) {} public mcb_Usuwaniestrefy(id, menu, item) {} public delete_zone(zone_num){ new x_num=zone_num-1 while(x_num<(MAX_ZONES-1)){ map_cors_edit[0+x_num*6]=map_cors_edit[6+x_num*6] map_cors_edit[1+x_num*6]=map_cors_edit[7+x_num*6] map_cors_edit[2+x_num*6]=map_cors_edit[8+x_num*6] map_cors_edit[3+x_num*6]=map_cors_edit[9+x_num*6] map_cors_edit[4+x_num*6]=map_cors_edit[10+x_num*6] map_cors_edit[5+x_num*6]=map_cors_edit[11+x_num*6] x_num++ } } public edit_zone(id){ editign=1 new text[512] new keys= (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<6)|(1<<8) format(text, 511, "\yEdit Zone - ^n^n\w1. %L: %s ^n\r 2.<- %L 3.-> %L^n\y 4.<- %L 5.-> %L^n ^n\w7. %L: %i ^n\w9. %L",LANG_SERVER,"AR_EDIT_COOR",zone_coords[zone_coords_num],LANG_SERVER,"BACK",LANG_SERVER,"MORE",LANG_SERVER,"BACK",LANG_SERVER,"MORE",LANG_SERVER,"AR_EDIT_CHANG",zone_incresment,LANG_SERVER,"EXIT") show_menu(id, keys, text) return PLUGIN_HANDLED } public edit_zone2(id, key){ switch(key){ case 0:{ if(zone_coords_num<2)zone_coords_num++ else zone_coords_num=0 } case 1:{ if((map_cors_edit[zone_coords_num*2+(zone_editing-1)*6]+zone_incresment)<(map_cors_edit[zone_coords_num*2+(zone_editing-1)*6+1]-32)) map_cors_edit[zone_coords_num*2+(zone_editing-1)*6]+=zone_incresment } case 2:{ if((map_cors_edit[zone_coords_num*2+(zone_editing-1)*6]-zone_incresment)>-8191) map_cors_edit[zone_coords_num*2+(zone_editing-1)*6]-=zone_incresment } case 3:{ if((map_cors_edit[zone_coords_num*2+(zone_editing-1)*6+1]-zone_incresment)>(map_cors_edit[zone_coords_num*2+(zone_editing-1)*6]+32)) map_cors_edit[zone_coords_num*2+(zone_editing-1)*6+1]-=zone_incresment } case 4:{ if((map_cors_edit[zone_coords_num*2+(zone_editing-1)*6+1]+zone_incresment)<8191) map_cors_edit[zone_coords_num*2+(zone_editing-1)*6+1]+=zone_incresment } case 6:{ if(zone_incresment<1000)zone_incresment*=10 else zone_incresment=1 } case 8:{ showmenu3(id) return PLUGIN_HANDLED } } edit_zone(id) return PLUGIN_HANDLED } ////////////////////////////////////////////////////////////////////////// ///////// M_Antirusher Draw Lines ///////// ////////////////////////////////////////////////////////////////////////// public FX_Line(start[3], stop[3], color[3], brightness, id) { message_begin(MSG_ONE_UNRELIABLE, SVC_TEMPENTITY, _, id) write_byte( TE_BEAMPOINTS ) write_coord(start[0]) write_coord(start[1]) write_coord(start[2]) write_coord(stop[0]) write_coord(stop[1]) write_coord(stop[2]) write_short( spr_dot ) write_byte( 1 ) // framestart write_byte( 1 ) // framerate write_byte( 4 ) // life in 0.1's write_byte( 5 ) // width write_byte( 0 ) // noise write_byte( color[0] ) // r, g, b write_byte( color[1] ) // r, g, b write_byte( color[2] ) // r, g, b write_byte( brightness ) // brightness write_byte( 0 ) // speed message_end() } public DrawLine(x1, y1, z1, x2, y2, z2, color[3],id) { new start[3] new stop[3] start[0] = ( x1 ) start[1] = ( y1 ) start[2] = ( z1 ) stop[0] = ( x2 ) stop[1] = ( y2 ) stop[2] = ( z2 ) FX_Line(start, stop, color, 200, id) } public ar_zone(zone_num,id){ new start[3],stop[3] new xyz=0 if(zone_editing==zone_num) xyz=1 zone_num=(zone_num-1)*6 start[0]= map_cors_edit[0+zone_num] start[1]= map_cors_edit[2+zone_num] start[2]= map_cors_edit[4+zone_num] stop[0]= map_cors_edit[1+zone_num] stop[1]= map_cors_edit[3+zone_num] stop[2]= map_cors_edit[5+zone_num] ShowZoneBox(start, stop, id,xyz) } public ShowZoneBox(mins[3], maxs[3], id,xyz) { DrawLine(maxs[0], maxs[1], maxs[2], mins[0], maxs[1], maxs[2], zone_color_aktiv, id) DrawLine(maxs[0], maxs[1], maxs[2], maxs[0], mins[1], maxs[2], zone_color_aktiv, id) DrawLine(maxs[0], maxs[1], maxs[2], maxs[0], maxs[1], mins[2], zone_color_aktiv, id) DrawLine(mins[0], mins[1], mins[2], maxs[0], mins[1], mins[2], zone_color_aktiv, id) DrawLine(mins[0], mins[1], mins[2], mins[0], maxs[1], mins[2], zone_color_aktiv, id) DrawLine(mins[0], mins[1], mins[2], mins[0], mins[1], maxs[2], zone_color_aktiv, id) DrawLine(mins[0], maxs[1], maxs[2], mins[0], maxs[1], mins[2], zone_color_aktiv, id) DrawLine(mins[0], maxs[1], mins[2], maxs[0], maxs[1], mins[2], zone_color_aktiv, id) DrawLine(maxs[0], maxs[1], mins[2], maxs[0], mins[1], mins[2], zone_color_aktiv, id) DrawLine(maxs[0], mins[1], mins[2], maxs[0], mins[1], maxs[2], zone_color_aktiv, id) DrawLine(maxs[0], mins[1], maxs[2], mins[0], mins[1], maxs[2], zone_color_aktiv, id) DrawLine(mins[0], mins[1], maxs[2], mins[0], maxs[1], maxs[2], zone_color_aktiv, id) if((xyz==1)&&(editign==1)){ if(zone_coords_num==0){ DrawLine(maxs[0], maxs[1], maxs[2], maxs[0], mins[1], mins[2], zone_color_yellow, id) DrawLine(maxs[0], maxs[1], mins[2], maxs[0], mins[1], maxs[2], zone_color_yellow, id) DrawLine(mins[0], maxs[1], maxs[2], mins[0], mins[1], mins[2], zone_color_red, id) DrawLine(mins[0], maxs[1], mins[2], mins[0], mins[1], maxs[2], zone_color_red, id) } else if( zone_coords_num==1){ DrawLine(mins[0], mins[1], mins[2], maxs[0], mins[1], maxs[2], zone_color_red, id) DrawLine(maxs[0], mins[1], mins[2], mins[0], mins[1], maxs[2], zone_color_red, id) DrawLine(mins[0], maxs[1], mins[2], maxs[0], maxs[1], maxs[2], zone_color_yellow, id) DrawLine(maxs[0], maxs[1], mins[2], mins[0], maxs[1], maxs[2], zone_color_yellow, id) } else{ DrawLine(maxs[0], maxs[1], maxs[2], mins[0], mins[1], maxs[2], zone_color_yellow, id) DrawLine(maxs[0], mins[1], maxs[2], mins[0], maxs[1], maxs[2], zone_color_yellow, id) DrawLine(maxs[0], maxs[1], mins[2], mins[0], mins[1], mins[2], zone_color_red, id) DrawLine(maxs[0], mins[1], mins[2], mins[0], maxs[1], mins[2], zone_color_red, id) } } } public show_all_zones(){ new num=1 while(num<=zones_edit){ ar_zone(num,map_editor) num++ } if(zone_editing>0){ new origins[3], origins2[3] get_user_origin(map_editor,origins) new Float: range_line new Float: range_origins[6] for(new i=0;i<6;i++) range_origins[i] = (map_cors_edit[i+6*(zone_editing-1)])*1.0 range_line= floatsqroot(((range_origins[1]-range_origins[0])/2.0-origins[0])*((range_origins[1]-range_origins[0])/2.0-origins[0])+((range_origins[3]-range_origins[2])/2.0-origins[1])*((range_origins[3]-range_origins[2])/2.0-origins[1])+((range_origins[5]-range_origins[4])/2.0-origins[2])*((range_origins[5]-range_origins[4])/2.0-origins[2])) if(range_line>20000) for(new i=0;i<3;i++){ origins2[i]=((map_cors_edit[i*2+6*(zone_editing-1)] + map_cors_edit[i*2+1+6*(zone_editing-1)])/2)/6 } else if(range_line>15000) for(new i=0;i<3;i++){ origins2[i]=((map_cors_edit[i*2+6*(zone_editing-1)] + map_cors_edit[i*2+1+6*(zone_editing-1)])/2)/5 } else if(range_line>10000) for(new i=0;i<3;i++){ origins2[i]=((map_cors_edit[i*2+6*(zone_editing-1)] + map_cors_edit[i*2+1+6*(zone_editing-1)])/2)/3 } else for(new i=0;i<3;i++){ origins2[i]=((map_cors_edit[i*2+6*(zone_editing-1)] + map_cors_edit[i*2+1+6*(zone_editing-1)])/2) } FX_Line(origins, origins2, zone_color_red,200,map_editor) } } public zone_warn(id,zone,direction,origins[3]){ new start[3],stop[3] start[2]=origins[2]-110 stop[2]=origins[2]-110 switch(direction){ case 0:{ start[0]=map_cors_origin[zone*6]+5 stop[0]=map_cors_origin[zone*6]+5 start[1]=map_cors_origin[zone*6+2] stop[1]=map_cors_origin[zone*6+3] } case 1:{ start[0]=map_cors_origin[zone*6+1]-5 stop[0]=map_cors_origin[zone*6+1]-5 start[1]=map_cors_origin[zone*6+2] stop[1]=map_cors_origin[zone*6+3] } case 2:{ start[0]=map_cors_origin[zone*6+0] stop[0]=map_cors_origin[zone*6+1] start[1]=map_cors_origin[zone*6+2]+5 stop[1]=map_cors_origin[zone*6+2]+5 } case 3:{ start[0]=map_cors_origin[zone*6+0] stop[0]=map_cors_origin[zone*6+1] start[1]=map_cors_origin[zone*6+3]-5 stop[1]=map_cors_origin[zone*6+3]-5 } } for(new i=0;i<9;i++){ start[2]+=30 stop[2]+=30 FX_Line(start, stop, zone_color_red, 60, id) } } /////////////////////////////////////////////////////////////////////////// ///////// M_Antirusher Save to file ///////// /////////////////////////////////////////////////////////////////////////// public write_to_file(){ new text[512],text2[64] new currentmap[32] get_mapname(currentmap,31) format(text,511,"%s %s ", g_team, currentmap) new x0[6],x1[6],y0[6],y1[6],z0[6],z1[6] for(new i=0;i<zones;i++){ num_to_str(map_cors_origin[0+i*6],x0,5) num_to_str(map_cors_origin[1+i*6],x1,5) num_to_str(map_cors_origin[2+i*6],y0,5) num_to_str(map_cors_origin[3+i*6],y1,5) num_to_str(map_cors_origin[4+i*6],z0,5) num_to_str(map_cors_origin[5+i*6],z1,5) format(text2,63,"%s %s %s %s %s %s ",x0,x1,y0,y1,z0,z1) add(text,511,text2) } if(is_linux_server()){ new zonefile[256] get_configsdir(zonefile, 255) format(zonefile, 255, "%s/antirusher/rush.cor", zonefile) if((write_file ( zonefile, text, map_cors_file_line ))==0) log_amx("<<Blad przy nadpisywaniu rush.cor>>") } else{ if((write_file ( "addons\amxmodx\configs\antirusher\rush.cor", text, map_cors_file_line ))==0) log_amx("<<Blad przy nadpisywaniu rush.cor>>") } } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par } */ Ha gépen leszek meg csinálom. |
Szerző: | Fantom [ 2015.01.14. 10:51 ] |
Hozzászólás témája: | Re: Rush |
Cvar: amx_antirusher_action 7 - Viszalöki |
Szerző: | PiStA99 [ 2015.01.14. 11:56 ] |
Hozzászólás témája: | Re: Rush |
és aszt meg lehetne csinálni hogy Irja ki minden kör elején hogy 60 Perc Után Mehet a Rush! ColorChat el ? és még aszt irja hogy ColocChat Mehet a Rush! |
Szerző: | Fantom [ 2015.01.14. 12:12 ] |
Hozzászólás témája: | Re: Rush |
PiStA99 írta: és aszt meg lehetne csinálni hogy Irja ki minden kör elején hogy 60 Perc Után Mehet a Rush! ColorChat el ? és még aszt irja hogy ColocChat Mehet a Rush! Szerintem nem 60 perc kell neked hanem csak másodperc! A többit meg átírod langba! 662 sorban van ilyen azt átírod amire akarod. SMA Forráskód: [ Mindet kijelol ]
|
Oldal: 1 / 1 | Minden időpont UTC+02:00 időzóna szerinti |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |