hlmod.hu https://hlmod.hu/ |
|
Rex csomag https://hlmod.hu/viewtopic.php?f=24&t=2893 |
Oldal: 1 / 1 |
Szerző: | BUTYKOS [2011.12.18. 14:03 ] |
Hozzászólás témája: | Rex csomag |
Sziasztok. Az lenne a fontos kérésem hogy valaki megcsinálná nekem a Rex-csomagot hogy: Ne forogjon Ne legyen benne +HP -HP Ne legyen benne +Gravitáció Ne legyen benne +ammopack -ammopack Amikor megkapjuk a világítást a csomagból csak fehér legyen a fény Legyen benne lasermine itt a sma: #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fakemeta> #include <engine> #include <fun> #include <zombieplague> #define ADMIN_PRESENT_SPAWN ADMIN_RCON // access level for zp_ps_spawn command #define ADMIN_PRESENT_REMOVE ADMIN_RCON // access level for zp_ps_remove command #define ADMIN_PRESENT_STOP ADMIN_RCON // access level for zp_ps_stop command #define ADMIN_PRESENT_START ADMIN_RCON // access level for zp_ps_start command #define PRESENT_LIMIT 40 // maximum amount of presents new const present_model[] = "models/zombie_plague/presents.mdl" // present model enum Color { NORMAL = 1, GREEN, TEAM_COLOR, GREY, RED, BLUE, } new TeamName[][] = { "", "TERRORIST", "CT", "SPECTATOR" } new file[78],total_presents, Float:present_data[PRESENT_LIMIT + 1][3], present_glow,present_light,present_light_radius,present_rot, spawn_time,min_presents,max_presents, value_ap,value_armor,value_hp_h,value_hp_z public plugin_precache() { precache_model(present_model) precache_sound("zombie_plague/present_spawn.wav") precache_sound("zombie_plague/get_present.wav") } public plugin_init() { register_plugin("[ZP] Addon: Present Spawner", "1.1", "Bill=Thailand=[UP] , <VeCo>") register_cvar("zp_addon_present_spawner_version","1.1",FCVAR_SERVER | FCVAR_SPONLY) register_logevent("round_end",2,"1=Round_End") register_logevent("round_start",2,"1=Round_Start") present_glow = register_cvar("zp_ps_present_glow","1") present_light = register_cvar("zp_ps_present_light","1") present_light_radius = register_cvar("zp_ps_present_light_radius","8") present_rot = register_cvar("zp_ps_present_rotate","1") spawn_time = register_cvar("zp_ps_spawn_presents_time","30.0") min_presents = register_cvar("zp_ps_min_spawn_presents","5") max_presents = register_cvar("zp_ps_max_spawn_presents","5") value_ap = register_cvar("zp_ps_present_ammo_pack_value","1") value_armor = register_cvar("zp_ps_present_armour_value","10") value_hp_h = register_cvar("zp_ps_present_human_health_value","20") value_hp_z = register_cvar("zp_ps_present_zombie_health_value","100") register_concmd("zp_ps_spawn","admin_present_spawn",ADMIN_PRESENT_SPAWN) register_concmd("zp_ps_remove","admin_present_remove",ADMIN_PRESENT_REMOVE) register_concmd("zp_ps_stop","admin_present_stop",ADMIN_PRESENT_STOP) register_concmd("zp_ps_start","admin_present_start",ADMIN_PRESENT_START) register_touch("info_present","player","present_touch") register_think("info_present","present_think") new mapname[32] get_mapname(mapname,31) format(file,77,"addons/amxmodx/configs/presents/%s.ini",mapname) load_presents() } public admin_present_spawn(id,level,cid) { if(!cmd_access(id,level,cid,1)) return PLUGIN_HANDLED if(total_presents == PRESENT_LIMIT) { console_print(id,"[ZP] Present limit exceeded! Maximum amount of presents is %i.",PRESENT_LIMIT) return PLUGIN_HANDLED } new Float:origin[3] entity_get_vector(id,EV_VEC_origin,origin) origin[2] -= 30.0 save_present(id,origin) return PLUGIN_HANDLED } public admin_present_remove(id,level,cid) { if(!cmd_access(id,level,cid,1)) return PLUGIN_HANDLED remove_all_presents() console_print(id,"[ZP] All presents were removed for this round.") return PLUGIN_HANDLED } public admin_present_stop(id,level,cid) { if(!cmd_access(id,level,cid,1)) return PLUGIN_HANDLED remove_all_presents() total_presents = 0 console_print(id,"[ZP] All presents were removed for this map.") return PLUGIN_HANDLED } public admin_present_start(id,level,cid) { if(!cmd_access(id,level,cid,1) || total_presents > 0) return PLUGIN_HANDLED remove_all_presents() load_presents() console_print(id,"[ZP] All presents were loaded for this map.") return PLUGIN_HANDLED } public round_end() { if(!total_presents) return remove_all_presents() } public round_start() { if(!total_presents) return remove_task(1337) set_task(get_pcvar_float(spawn_time),"spawn_random_presents",1337) } public spawn_random_presents() { new num = random_num(get_pcvar_num(min_presents),get_pcvar_num(max_presents)) if(num != 0) for(new ii=0;ii<num;ii++) spawn_present(present_data[random(total_presents)]) } public present_touch(ent,id) { if(zp_get_user_nemesis(id) || zp_get_user_survivor(id)) return give_random_present(ent,id) } public give_random_present(ent,id) { new num = random_num(1,19) switch(num) { case 1: { ColorChat(id,GREEN,"[ZP]^x01 Te kaptal^x04 %i^x01 loszercsomagot!",get_pcvar_num(value_ap)) zp_set_user_ammo_packs(id,zp_get_user_ammo_packs(id) + get_pcvar_num(value_ap)) } case 2: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Te kaptal^x04 %i^x01 armort!",get_pcvar_num(value_armor)) cs_set_user_armor(id,get_pcvar_num(value_armor),CS_ARMOR_KEVLAR) } } case 3: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal ejjelatot!") zp_set_user_nightvision(id,1) } } case 4: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal HE-granatot!") give_item(id,"weapon_hegrenade") } } case 5: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal vakito granatot!") give_item(id,"weapon_flashbang") } } case 6: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal Fust granatot!") give_item(id,"weapon_smokegrenade") } } case 7: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal longJumpot!") give_item(id, "item_longjump") } } case 8: { if(zp_get_user_zombie(id)) { ColorChat(id,GREEN,"[ZP]^x01 Kaptal^x04 %i^x01 eletet!",get_pcvar_num(value_hp_z)) set_user_health(id,get_user_health(id) + get_pcvar_num(value_hp_z)) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal^x04 %i^x01 eletet!",get_pcvar_num(value_hp_h)) set_user_health(id,get_user_health(id) + get_pcvar_num(value_hp_h)) } } case 9: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 m249^x01!") give_item(id,"weapon_m249") cs_set_user_bpammo(id,CSW_M249,100) } } case 10: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 sg550^x01!") give_item(id,"weapon_sg550") cs_set_user_bpammo(id,CSW_SG550,30) } } case 11: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 g3sg1^x01!") give_item(id,"weapon_g3sg1") cs_set_user_bpammo(id,CSW_G3SG1,20) } } case 12: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 mp5^x01!") give_item(id,"weapon_mp5navy") cs_set_user_bpammo(id,CSW_MP5NAVY,80) } } case 13: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 m3^x01!") give_item(id,"weapon_m3") cs_set_user_bpammo(id,CSW_M3,10) } } case 14: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 elite^x01!") give_item(id,"weapon_elite") cs_set_user_bpammo(id,CSW_ELITE,80) } } case 15: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 deagle^x01!") give_item(id,"weapon_deagle") cs_set_user_bpammo(id,CSW_DEAGLE,21) } } case 16: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 xm1014^x01!") give_item(id,"weapon_xm1014") cs_set_user_bpammo(id,CSW_XM1014,14) } } case 17: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 mac10^x01!") give_item(id,"weapon_mac10") cs_set_user_bpammo(id,CSW_MAC10,21) } } case 18: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 tmp^x01!") give_item(id,"weapon_tmp") cs_set_user_bpammo(id,CSW_TMP,80) } } case 19: { if(zp_get_user_zombie(id)) { give_random_present(ent,id) } else { ColorChat(id,GREEN,"[ZP]^x01 Kaptal -^x04 p228^x01!") give_item(id,"weapon_p228") cs_set_user_bpammo(id,CSW_P228,30) } } } emit_sound(ent,CHAN_AUTO,"zombie_plague/get_present.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM) remove_entity(ent) } public present_think(ent) { if(get_pcvar_num(present_light)) { static Float:origin[3] entity_get_vector(ent,EV_VEC_origin,origin) engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, origin, 0) write_byte(TE_DLIGHT) engfunc(EngFunc_WriteCoord, origin[0]) engfunc(EngFunc_WriteCoord, origin[1]) engfunc(EngFunc_WriteCoord, origin[2]) write_byte(get_pcvar_num(present_light_radius)) write_byte(entity_get_int(ent,EV_INT_iuser1)) write_byte(entity_get_int(ent,EV_INT_iuser2)) write_byte(entity_get_int(ent,EV_INT_iuser3)) write_byte(2) write_byte(0) message_end() } if(get_pcvar_num(present_rot)) { static Float:angles[3] entity_get_vector(ent,EV_VEC_angles,angles) angles[1]-- entity_set_vector(ent,EV_VEC_angles,angles) } entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) } public remove_all_presents() remove_entity_name("info_present") public load_presents() { total_presents = 0 new buffer[128], x[12],y[12],z[12] if(file_exists(file)) { new save = fopen(file,"rt") if(!save) return while(!feof(save)) { fgets(save,buffer,127) if(buffer[0] == ';' || !buffer[0]) continue parse(buffer, x,11, y,11, z,11) present_data[total_presents][0] = str_to_float(x) present_data[total_presents][1] = str_to_float(y) present_data[total_presents][2] = str_to_float(z) total_presents++ } fclose(save) } } public spawn_present(Float:origin[3]) { new ent = create_entity("info_target") if(ent) { entity_set_string(ent,EV_SZ_classname,"info_present") entity_set_model(ent,present_model) entity_set_int(ent,EV_INT_solid,SOLID_TRIGGER) entity_set_int(ent,EV_INT_movetype,MOVETYPE_TOSS) entity_set_float(ent,EV_FL_gravity,1.0) if(get_pcvar_num(present_glow)) { entity_set_int(ent,EV_INT_iuser1,random(255)) entity_set_int(ent,EV_INT_iuser2,random(255)) entity_set_int(ent,EV_INT_iuser3,random(255)) set_rendering(ent,kRenderFxGlowShell,entity_get_int(ent,EV_INT_iuser1),entity_get_int(ent,EV_INT_iuser2),entity_get_int(ent,EV_INT_iuser3),kRenderNormal,60) } entity_set_origin(ent,origin) entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) emit_sound(ent,CHAN_AUTO,"zombie_plague/present_spawn.wav",VOL_NORM,ATTN_NORM,0,PITCH_NORM) } } public save_present(id,Float:origin[3]) { new save = fopen(file,"at") if(save) { fprintf(save,"%.2f %.2f %.2f^n",origin[0],origin[1],origin[2]) fclose(save) console_print(id,"[ZP] Present Spawn: successfully added at x:y:z(%.2f : %.2f : %.2f).",origin[0],origin[1],origin[2]) load_presents() } } ColorChat(id, Color:type, const msg[], {Float, Sql, Result,_}:...) { new message[256] switch(type) { case NORMAL: message[0] = 0x01 case GREEN: message[0] = 0x04 default: message[0] = 0x03 } vformat(message[1], 251, msg, 4) message[192] = '^0' new team, ColorChange, index, MSG_Type if(id) { MSG_Type = MSG_ONE index = id } else { index = FindPlayer() MSG_Type = MSG_ALL } team = get_user_team(index) ColorChange = ColorSelection(index, MSG_Type, type) ShowColorMessage(index, MSG_Type, message) if(ColorChange) Team_Info(index, MSG_Type, TeamName[team]) } ShowColorMessage(id, type, message[]) { static bool:saytext_used static get_user_msgid_saytext if(!saytext_used) { get_user_msgid_saytext = get_user_msgid("SayText") saytext_used = true } message_begin(type, get_user_msgid_saytext, _, id) write_byte(id) write_string(message) message_end() } Team_Info(id, type, team[]) { static bool:teaminfo_used static get_user_msgid_teaminfo if(!teaminfo_used) { get_user_msgid_teaminfo = get_user_msgid("TeamInfo") teaminfo_used = true } message_begin(type, get_user_msgid_teaminfo, _, id) write_byte(id) write_string(team) message_end() return 1 } ColorSelection(index, type, Color:Type) { switch(Type) { case RED: return Team_Info(index, type, TeamName[1]) case BLUE: return Team_Info(index, type, TeamName[2]) case GREY: return Team_Info(index, type, TeamName[0]) } return 0 } FindPlayer() { new i = -1 while(i <= get_maxplayers()) { if(is_user_connected(++i)) return i } return -1 } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1038\\ f0\\ fs16 \n\\ par } */ Aki ezt megcsinálná nekem annak nagyon megköszönném |
Szerző: | DeteCT0R [2011.12.18. 14:48 ] |
Hozzászólás témája: | Re: Rex csomag |
Kód: #include <amxmodx> probald atalakitani nembiztos jo ![]() ![]() |
Szerző: | BUTYKOS [2011.12.18. 14:56 ] |
Hozzászólás témája: | Re: Rex csomag |
Nem működik ![]() |
Szerző: | kiki [2011.12.18. 15:07 ] |
Hozzászólás témája: | Re: Rex csomag |
Zárolom még nem tanuljátok meg hogy a forráskódokat(sma), code közé rakjátok be! Kód: IDE |
Oldal: 1 / 1 | Minden időpont UTC+02:00 időzóna szerinti |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |