|
Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/
[w.i.p.] EXODUS
|
|
HoRRoR | Дата: Среда, 29.07.2009, 01:01:26 | Сообщение # 1 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| итак, это небольшой аддон, который добавляет два новых режима в ZP. так как мод в разработке, то не ждите, что я выложу полностью работоспособную версию собственно: ============= Despair mode ============= Режим игры от 12 человек, иначе карта меняется. Суть режима: 4 человека становятся выжившими, с пулеметом m249 и бесконечными патронами. Все остальные становятся зомби, которые после смерти воскрешаются. Свет на карте не отключается. Есть шанс, что вместо зомби появится Немезис, этакий перец, который наносит 500 урона за удар. Каждый мертвый зомби, увеличивает шанс, что появится немезис на 1%. Если немезис появится - шанс обнуляется. Есть порог - 10%, ниже этого порога немезис не появится. ============= Survival mode ============= Режим игры от 10 человек, иначе карта меняется. Суть режима: все игроки становятся зомби, кроме 4-х игроков, которые становятся людьми и переносятся в другую локацию. Людям при появлении даётся пистолет и несколько десятков патронов. Зомби респавнятся. Есть шанс 4% что при респавне зомби получит инфекшн бомбу, либо станет немезисом (немезис появится, только если все 4 человека живы). Каждому человек даётся 5 аммопаков, для покупки патронов. Также игрок, убивший немезиса получит халявные 5 аммопаков и 500 хп. Если человек умирает, то у остальных людей экран моргнёт красным и хп прибавится на определенное число (на данный момент 200, причем стартовое хп как людей, так и зомби - 500)Также, если человек наберет более 50 "фрагов" (убийств), то есть вероятностьв 5%, что он при респавне (д.б. зомби) превратится в человека с пулеметом m249. Приаттачил исходник + кое какой мусор (конфиг) (!) это не готовый мод, тут мног очего не хватает. выложил на обозрение только с целью обсуждения сабжа и предложений/замечаний. если хотите таки запустить его у себя, придется вам самим немного перелопатить код Добавлено (2009-07-29, 1:01 Am) --------------------------------------------- алсо, каждый режим работает только на определенном типе карт zs_ и zd_ пока готово только 2 карты, остальные мне делают мои рабы на КСМе ( http://cs-mapping.com.ua/forum/forumdisplay.php?f=121 )
|
|
| |
PomanoB | Дата: Среда, 29.07.2009, 09:58:45 | Сообщение # 2 |
Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Статус: Не в сети
| Отлично, будем ждать финальную версию и карт побольше)
http://romanov4400.mybrute.com
|
|
| |
CHyCMyMpNk | Дата: Воскресенье, 02.08.2009, 19:01:13 | Сообщение # 3 |
Полковник
Группа: Пользователи
Сообщений: 180
Статус: Не в сети
| А карты можешь сюда залить ?
вечное спасибо r013x'y : )
|
|
| |
HoRRoR | Дата: Суббота, 08.08.2009, 23:20:45 | Сообщение # 4 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| пожалуй, но только одну (survival) и то там свет без отражений просчитан Добавлено (2009-08-08, 11:20 Pm) --------------------------------------------- немного оптимизировал код. но MsgChat у меня не хочет выводить %d =((( пока приходится делать через формат. есть какие советы? Code /* CREDITS: MeRcyLeZZ : Original Zombie Plague mod HoRRoR : Original idea and coding (exodus)
SPECIAL THANKS: PAHANCS : get_entity_origin stock
Music from: Killing Floor Silent Hill OST */
#include <amxmodx> #include <amxmisc> #include <engine> #include <fakemeta> #include <fun> #include <csx> #include <zombieplague>
#define PLUGIN "Zombie Plague: Exodus" #define VERSION "0.5.4" #define COREVERSION "2.1.1" #define AUTHOR "HoRRoR"
new g_maxplayers new is_round_started = 0 new g_is_must_change_map // ----------------------------------- // new is_despair_map = 0 new despair_surv_health new is_despair_started = 0 new g_dsp_survcount new is_nemesis_chance new despair_nemesis_first_chance new namesis_min_chance new despair_nemesis_health // ----------------------------------- // new is_survival_started = 0 new Float:g_SpawnVecs[60][3]; new is_survival_map = 0 new survival_hum_health new g_msgScreenFade const FFADE_IN = 0x0000 const FFADE_STAYOUT = 0x0004 const UNIT_SECOND = (1<<12) new infectionbomb_chance new nemesis_survival_chance new survivor_start_ammopacks new nemesis_kill_extra_ammo new friend_die_extra_hp new player_was_survivor[33] new time_to_change_map new bot_survival_stupid new bot_survival_extrahp new survival_blind_players new nemesis_kill_extra_hp new nemesis_can_spawn // ----------------------------------- // new swarm_human_health new cvar_despair_minplayers new cvar_survival_minplayers new survival_sp_exists // ----------------------------------- //
new music_file[17][] = { "sound/zombie_plague/music/infection_1.mp3", //MODE_INFECTION "sound/zombie_plague/music/infection_1.mp3", //MODE_NEMESIS "sound/zombie_plague/music/infection_1.mp3", //MODE_SURVIVOR "sound/zombie_plague/music/infection_1.mp3", //MODE_SWARM "sound/zombie_plague/music/infection_1.mp3", //MODE_MULTI "sound/zombie_plague/music/plague_1.mp3", //MODE_PLAGUE "sound/zombie_plague/music/Survival/nemesis.mp3", //survival nemesis music "sound/zombie_plague/music/Despair/track01.mp3", //despair music 1 "sound/zombie_plague/music/Despair/track02.mp3", //despair music 2 "sound/zombie_plague/music/Despair/track03.mp3", //despair music 3 "sound/zombie_plague/music/Despair/track04.mp3", //despair music 4 "sound/zombie_plague/music/Despair/track05.mp3", //despair music 5 "sound/zombie_plague/music/Survival/track01.mp3", //survival music 1 "sound/zombie_plague/music/Survival/track02.mp3", //survival music 2 "sound/zombie_plague/music/Survival/track03.mp3", //survival music 3 "sound/zombie_plague/music/Survival/track04.mp3", //survival music 4 "sound/zombie_plague/music/Survival/track05.mp3" //survival music 5 }
new announce_snd[6][] = { "zombie_plague/exodus_announcer/startgame.wav", "zombie_plague/exodus_announcer/domination.wav", "zombie_plague/exodus_announcer/bloodbath.wav", "zombie_plague/qs/40_maniac.wav", "zombie_plague/qs/45_termination.wav", "zombie_plague/qs/50_killingmachine.wav" }
public plugin_precache() { new i for (i = 0; i < 17; i++) precache_generic(music_file[i])
for (i = 0; i < 6; i++) precache_sound(announce_snd[i]) }
public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_logevent("roundStart", 2, "1=Round_Start") register_event("DeathMsg", "event_player_death", "a")
register_clcmd("zp_exodus_start_survival", "start_survival_con_cmd") register_clcmd("zp_exodus_start_despair", "start_despair_con_cmd") register_clcmd("say /stayhere", "no_change_map") register_clcmd("say_team /stayhere", "no_change_map")
register_clcmd("say /makemerich", "admin_ammoapcks") register_clcmd("say /can", "check_is_can") register_clcmd("say /version", "check_version") register_clcmd("say /exodus", "exodus_version")
g_msgScreenFade = get_user_msgid("ScreenFade") g_maxplayers = get_maxplayers()
is_despair_map = register_cvar("zp_exodus_dsp_enabled", "0") despair_surv_health = register_cvar("zp_ex_dsp_basesurvhealth", "200") despair_nemesis_health = register_cvar("zp_ex_dsp_nemhealth", "2000") despair_nemesis_first_chance = register_cvar("zp_ex_dsp_nemchance", "0") namesis_min_chance = register_cvar("zp_ex_dsp_nemminchance", "10") cvar_despair_minplayers = register_cvar("zp_ex_dsp_minplayers", "8")
is_survival_map = register_cvar("zp_exodus_srv_enabled", "0") survival_hum_health = register_cvar("zp_ex_srv_basehumhealth", "50") infectionbomb_chance = register_cvar("zp_ex_srv_bomb_chance", "2") nemesis_survival_chance = register_cvar("zp_ex_srv_nem_chance", "2") survivor_start_ammopacks = register_cvar("zp_ex_srv_startammo", "5") nemesis_kill_extra_ammo = register_cvar("zp_ex_srv_nemkill_ammo", "5") nemesis_kill_extra_hp = register_cvar("zp_ex_srv_nemkill_extrahp", "500") friend_die_extra_hp = register_cvar("zp_ex_srv_die_extrahp", "200") survival_blind_players = register_cvar("zp_ex_srv_blind", "1") cvar_survival_minplayers = register_cvar("zp_ex_srv_minplayers", "8")
time_to_change_map = register_cvar("zp_exodus_time_to_change_map", "30.0") bot_survival_stupid = register_cvar("zp_exodus_bot_helper", "1") bot_survival_extrahp = register_cvar("zp_exodus_bot_helper_extrahp", "500")
swarm_human_health = register_cvar("zp_swarm_hum_health", "500")
}
public check_version(id) { new text[100] format(text,99,"^x04[EXODUS]^x01 Server version is ^x04%s",COREVERSION) MsgChat(id,MSG_ALL,text) }
public exodus_version(id) { new text[100] format(text,99,"^x04[EXODUS]^x01 Exodus addon version is ^x04%s",VERSION) MsgChat(id,MSG_ALL,text) }
public admin_ammoapcks(id) { if (is_user_admin(id)) { zp_set_user_ammo_packs(id,25) } return PLUGIN_HANDLED }
public check_is_can(id) { if (player_was_survivor[id] == 0) MsgChat(id,MSG_ONE,"^x04[DEBUG]^x01 Player was survivor? -- FALSE") else MsgChat(id,MSG_ONE,"^x04[DEBUG]^x01 Player was survivor? -- TRUE") return PLUGIN_HANDLED }
public roundStart() { remove_task(101) remove_task(295)
is_round_started = 0 is_despair_started = 0 g_is_must_change_map = 0 nemesis_can_spawn = 1
for (new i = 1; i <= g_maxplayers; i++) remove_task(i)
new start_despair = get_pcvar_num(is_despair_map) // если zd_ карта - делаем режим DESPAIR if (start_despair == 1) set_task(9.0,"start_despair_mode")
new start_survival = get_pcvar_num(is_survival_map) // если zs_ карта - делаем режим SURVIVAL if (start_survival == 1) { if (get_pcvar_num(survival_blind_players) == 1) for (new i = 1; i <= get_playersnum(); i++) MsgScreenFade(i,40,0,100)
if (random_num(1,100) <= 1) { set_hudmessage(100, 0, 255, -1.0, 0.4, _, _, 7.0, _, _, -1) show_hudmessage(0, "Do you wanna see some street magic?") // joke! xD }else{ set_hudmessage(100, 0, 255, -1.0, 0.4, _, _, 7.0, _, _, -1) show_hudmessage(0, "Wait for starting the game...") } set_task(8.0,"start_survival_mode",295) } } /* ------------------------------------------- | Режим: DESPAIR | ------------------------------------------- */ public start_despair_con_cmd(id) { if (is_user_admin(id) && is_despair_started == 0) start_despair_mode }
public start_despair_mode() { if (get_pcvar_num(cvar_despair_minplayers) < 8) set_pcvar_num(cvar_despair_minplayers, 8)
new despair_enabled = get_pcvar_num(is_despair_map) if (despair_enabled == 1 && get_playersnum() >= get_pcvar_num(cvar_despair_minplayers) && is_round_started == 0) { remove_task(101) remove_task(295)
set_hudmessage(200, 100, 0, -1.0, 0.2, 0, 1.0, 3.0, 0.2, 0.2, -1) show_hudmessage(0, "Despair mode!")
is_despair_started = 1
new randomplayer g_dsp_survcount = 1
is_round_started = 1 is_nemesis_chance = get_pcvar_num(despair_nemesis_first_chance)
new health_multiplier = get_playersnum()
// делаем сурвиворов while (g_dsp_survcount < 5) { randomplayer = random_num(1,get_playersnum()) if (is_user_alive(randomplayer) && !zp_get_user_survivor(randomplayer) && player_was_survivor[randomplayer] == 0) { // делаем сурвивора zp_make_user_survivor(randomplayer) g_dsp_survcount++ set_task(1.5,"add_pws",randomplayer) set_user_health (ran domplayer, get_pcvar_num(despair_surv_health) * health_multiplier) } } }
if (get_playersnum() < get_pcvar_num(cvar_despair_minplayers)) { new cv_nextmap[32] get_cvar_string("amx_nextmap", cv_nextmap, 31)
g_is_must_change_map = 1
set_hudmessage(255, 0, 0, -1.0, 0.35, 0, 3.0, 30.0, 0.2, 0.2, 2) show_hudmessage(0, ".: EXODUS :.^nDespair cannot be started, because %d players is needed!^nThe map will be changed to ^"%s^"^n^nIf you don't want to change map or if you want to wait other players, write /stayhere in chat.",get_pcvar_num(cvar_despair_minplayers),cv_nextmap)
set_task(get_pcvar_float(time_to_change_map),"exodus_failed_and_change_m ap" ,101)
for (new i = 1; i <= g_maxplayers; i++) MsgScreenFade(i,40,0,100,0) } }
public no_change_map(id) { if (g_is_must_change_map == 1) { MsgChat(id,MSG_ALL,"^x04[EXODUS]^x01 Map will not changed.") remove_task(101) g_is_must_change_map = 0
set_hudmessage(255, 0, 0, -1.0, 0.35, 0, 3.0, 6.0, 0.2, 0.2, 2) show_hudmessage(0, ".: EXODUS :.^nMap will not changed in this round.") } } public exodus_failed_and_change_map() { new cv_nextmap[32] get_cvar_string("amx_nextmap", cv_nextmap, 31) server_cmd("changelevel %s",cv_nextmap) }
public zp_user_humanized_post(id) { if (zp_get_user_survivor(id)) set_user_health(id, get_pcvar_num(despair_surv_health))
if (is_survival_started == 1) { new health_multiplier = get_playersnum()
set_user_health(id, get_pcvar_num(survival_hum_health) * health_multiplier) zp_set_user_ammo_packs(id, get_pcvar_num(survivor_start_ammopacks)) give_item(id,"item_kevlar") give_item(id,"weapon_usp") give_item(id,"ammo_45acp") g ive_item(id,"ammo_45acp") give_item(id,"ammo_45acp")
if (is_user_bot(id) && get_pcvar_num(bot_survival_stupid) == 1 && is_valid_ent(id)) { set_user_health(id,get_user_health(id) + get_pcvar_num(bot_survival_extrahp)) new randomweapon = random_num(1,3) switch (randomweapon) { case 1: { give_item(id,"weapon_m4a1") give_item(id,"ammo_556nato") give_item(id,"ammo_556nato") } case 2: { give_item(id,"weapon_mp5navy") give_item(id,"ammo_9mm") give_item(id,"ammo_9mm") } case 3: { give_item(id,"weapon_m3") give_item(id,"ammo_buckshot") give_item(id,"ammo_buckshot") } } }
} }
public event_player_death() { new killer = read_data(1) new victim = read_data(2)
MsgAnnounceFrags(killer)
if (is_despair_started == 1) set_task(2.0,"despeir_ressurect",victim)
if (is_survival_started == 1) { set_task(2.0,"survival_ressurect",victim) if (zp_get_user_nemesis(victim)) { zp_set_user_ammo_packs(killer, zp_get_user_ammo_packs(killer) + get_pcvar_num(nemesis_kill_extra_ammo)) set_user_health(killer,get_user_health(killer) + get_pcvar_num(nemesis_kill_extra_hp)) client_cmd(0,"mp3 stop; mp3 loop %s",music_file[random_num(12,16)]) MsgScreenFade(killer,0,200,0,100,1) } if (!(zp_get_user_zombie(victim) || zp_get_user_nemesis(victim))) for (new i = 1; i < get_maxplayers(); i++) if ( !(zp_get_user_zombie(i) || zp_get_user_nemesis(i)) && is_valid_ent(i) && !is_user_alive(victim)) { set_user_health(i,get_user_health(i) + get_pcvar_num(friend_die_extra_hp)) MsgScreenFade(i,200,0,0,100,1) } } }
public despeir_ressurect(dinner) { new name[33]
if ((is_user_alive(dinner) == 0) && zp_get_user_zombie(dinner)) { if (random_num(1,100) < is_nemesis_chance && is_nemesis_chance > get_pcvar_num(namesis_min_chance)) { zp_respawn_user(dinner, ZP_TEAM_ZOMBIE) zp_make_user_nemesis(dinner) set_user_health(dinner, get_pcvar_num(despair_nemesis_health)) get_user_name(dinner,name,32)
is_nemesis_chance = 0
MsgChat(dinner,MSG_ALL,"^x04[EXODUS]^x01 Player ^x03%s^x01 is a nemesis!") }else{ zp_respawn_user(dinner, ZP_TEAM_ZOMBIE) is_nemesis_chance++
if (is_nemesis_chance < get_pcvar_num(namesis_min_chance)) { new text[100] format(text,99,"^x04[EXODUS]^x01 Chance to spawn nemesis: ^x04%d%",is_nemesis_chance) MsgChat(dinner,MSG_ALL,text) }else{ new text[100] format(text,99,"^x04[EXODUS]^x01 Chance to spawn nemesis: ^x03%d%",is_nemesis_chance) MsgChat(dinner,MSG_ALL,text) } } } }
/* Winner teams for zp_round_ended() { WIN_NO_ONE, WIN_ZOMBIES, WIN_HUMANS */ public zp_round_ended(winteam) { client_cmd(0,"mp3 stop") /* if (zp_is_plague_round() && winteam == WIN_HUMANS) { client_cmd(0,"stopsound; mp3 stop") client_cmd(0,"spk sound/zp_salvation.wav") } */
}
public zp_round_started(gamemode) { is_round_started = 1
if (is_despair_started == 1) { client_cmd(0,"stopsound; mp3 loop %s",music_file[random_num(7,11)]) client_cmd(0,"spk %s",announce_snd[0]) set_task(1.0,"reset_pws") }else if (is_survival_started == 1) { client_cmd(0,"stopsound; mp3 loop %s",music_file[random_num(12,16)]) client_cmd(0,"spk %s",announce_snd[0]) set_task(1.0,"reset_pws") }else{ switch (gamemode) { case MODE_INFECTION:client_cmd(0,"mp3 loop %s",music_file[0]) case MODE_NEMESIS:client_cmd(0,"mp3 loop %s",music_file[1]) case MODE_SURVIVOR:client_cmd(0,"mp3 loop %s",music_file[2]) case MODE_SWARM:client_cmd(0,"mp3 loop %s",music_file[3]) case MODE_MULTI:client_cmd(0,"mp3 loop %s",music_file[4]) case MODE_PLAGUE:client_cmd(0,"mp3 loop %s",music_file[5]) } }
// это вообще мааленькая надстройка к оригинальному ZP, но влом было отдельный плагин писать if (zp_is_swarm_round() || zp_is_plague_round()) { for (new i = 1; i <= g_maxplayers; i++) { if (!(zp_get_user_zombie(i) || zp_get_user_nemesis(i) || zp_get_user_survivor(i)) && is_valid_ent(i)) set_user_health(i,get_pcvar_num(swarm_human_health)) } }
}
public reset_pws() { for (new i = 1; i <= get_playersnum(); i++) player_was_survivor[i] = 0 }
public add_pws(id) { player_was_survivor[id]++
new name[33] get_user_name(id,name,32) }
/* ------------------------------------------- | Режим: SURVIVAL | ------------------------------------------- */ public start_survival_con_cmd(id) { if (is_user_admin(id) && is_survival_started == 0) start_survival_mode }
public unblind() for (new i = 1; i <= g_maxplayers; i++) MsgScreenFade(i,40,0,100,0)
public start_survival_mode() { if (get_pcvar_num(cvar_survival_minplayers) < 8) set_pcvar_num(cvar_survival_minplayers, 8)
survival_sp_exists = 0
readSpawns set_task(1.0,"unblind")
new survival_enabled = get_pcvar_num(is_survival_map) if (survival_enabled == 1 && get_playersnum() >= get_pcvar_num(cvar_survival_minplayers) && is_round_started == 0) { remove_task(101) remove_task(295)
set_hudmessage(200, 100, 0, -1.0, 0.2, 0, 1.0, 3.0, 0.2, 0.2, -1) show_hudmessage(0, "Survival mode!")
is_survival_started = 1
new randomplayer new g_srv_humcount g_srv_humcount = 1
is_round_started = 1 new playernum = 1 new tempid[5]
// делаем людей while (g_srv_humcount < 4) { randomplayer = random_num(1,get_playersnum()) if (is_user_alive(randomplayer) && !zp_get_user_survivor(randomplayer)) if (player_was_survivor[randomplayer] == 0) { zp_make_user_survivor(randomplayer) // делаем сурвивора, чтобы не далать сварм раунд и не ебаться с количеством люди/зомби playernum = zp_get_human_count() g_srv_humcount = zp_get_human_count() tempid[zp_get_human_count()] = randomplayer if (survival_sp_exists == 1) entity_set_origin(randomplayer, g_SpawnVecs[playernum]) // client_print(0,print_console,"[DEBUG] Playernum++ = %d, Human count = %d",playernum,g_srv_humcount) } }
for (new i = 1; i <= 4; i++) { zp_infect_user(tempid[i],_,1) zp_disinfect_user(tempid[i],1) set_task(1.5,"add_pws",tempid[i]) // client_print(0,print_console,"[DEBUG] Player [%d] turned to human. Cycle count = %d",tempid[i],i) }
if (survival_sp_exists == 0) MsgChat(1, MSG_ALL, "^x04[EXODUS]^x01 Spawn points for survival mode not found!")
}
if (get_playersnum() < get_pcvar_num(cvar_survival_minplayers)) { new cv_nextmap[32] get_cvar_string("amx_nextmap", cv_nextmap, 31)
g_is_must_change_map = 1
set_hudmessage(255, 0, 0, -1.0, 0.35, 0, 3.0, 30.0, 0.2, 0.2, 2) show_hudmessage(0, ".: EXODUS :.^nSurvival cannot be started, because %d players is needed!^nThe map will be changed to ^"%s^"^n^nIf you don't want to change map or if you want to wait other players, write /stayhere in chat.",get_pcvar_num(cvar_survival_minplayers),cv_nextmap)
set_task(get_pcvar_float(time_to_change_map),"exodus_failed_and_change_ map ",101)
for (new i = 1; i <= g_maxplayers; i++) MsgScreenFade(i,40,0,100,0) } }
public readSpawns() { new Float:temporigin[3] new i = 1 new ent = -1 new check[256]
// для удобства мэпперов while((ent = find_ent_by_class(ent, "info_target")) != 0) { entity_get_string(ent, EV_SZ_targetname, check, 31) if(equal(check, ".survivorspawn")) { get_entity_origin(ent, temporigin) // client_print(0,print_console,"[DEBUG] %d %d %d",floatround(temporigin[0]),floatround(temporigin[1]),floatround(temporigin[2])) g_SpawnVecs[i] = temporigin i++ survival_sp_exists = 1 } } // client_print(0,print_console,"[DEBUG] Found %d ^"survivor spawn point^" entities.",i-1) }
public survival_ressurect(id) { if ((is_user_alive(id) == 0) && (zp_get_user_zombie(id) || zp_get_user_nemesis(id))) { new name[33] zp_respawn_user(id, ZP_TEAM_ZOMBIE) if (random_num(1,100) <= get_pcvar_num(infectionbomb_chance) && is_user_alive(id)) { get_user_name(id,name,31) MsgChat(id,MSG_ALL,"^x04[EXODUS]^x01 Zombie ^x03%s^x01 spawn with ^x04Infection Bomb^x01!",name) give_item(id,"weapon_hegrenade") }else if(random_num(1,100) <= get_pcvar_num(nemesis_survival_chance) && is_user_alive(id) && zp_get_human_count() == 4 && nemesis_can_spawn == 1) { get_user_name(id,name,31) zp_make_user_nemesis(id) client_cmd(0,"mp3 stop; mp3 loop %s",music_file[6]) nemesis_can_spawn = 0 MsgChat(id,MSG_ALL,"^x04[EXODUS]^x01 Zombie ^x03%s^x01 spawn as ^x03Nemesis^x01!",name) } } }
public zp_user_infected_post(id,infector) { if (get_pcvar_num(is_survival_map) == 1) zp_set_user_ammo_packs(id, 0)
MsgAnnounceFrags(infector) }
public client_putinserver(id) { player_was_survivor[id] = 0 }
// ========================================================= // STOCKS ================================================== // =========================================================
stock get_entity_origin(ent, Float:fEntOrigin[3]) { return pev(ent, pev_origin, fEntOrigin) }
stock MsgChat(id, msgtype, const text[], any:...) { message_begin(msgtype,get_user_msgid("SayText"),{0,0,0},id) write_byte(id) write_string(text) message_end() }
stock MsgAnnounceFrags(activator) { if (is_despair_started == 0 || is_survival_started == 0) { new name[33]
get_user_name(activator,name,32) set_hudmessage(255, 0, 0, -1.0, 0.2, 0, 1.0, 1.0, 1.0, 1.0, -1)
switch (get_user_frags(activator)) { case 20: { client_cmd(0,"spk %s",announce_snd[1]) show_hudmessage(0, "%s is on domination!",name) } case 40: { client_cmd(0,"spk %s",announce_snd[2]) show_hudmessage(0, "%s is on blood bath!",name) } case 60: { client_cmd(0,"spk %s",announce_snd[3]) show_hudmessage(0, "%s is a maniac!",name) } case 80: { client_cmd(0,"spk %s",announce_snd[4]) show_hudmessage(0, "%s is on a termination!",name) } case 100: { client_cmd(0,"spk %s",announce_snd[5]) show_hudmessage(0, "%s is a killing machine!",name) } } } }
stock MsgScreenFade(id, red=200, green=100, blue=0, alpha=255, type=0) { if (is_valid_ent(id)) { message_begin(MSG_ONE, g_msgScreenFade, _, id) if (type == 0) // if type = 0 - blind, else - fade out { write_short(4) write_short(0) write_short(FFADE_STAYOUT) }else{ write_short(UNIT_SECOND) write_shor t(0) w rite_short(FFADE_IN) } write_byte(red) write_byte(green) write_byte(blue) write_byte(alpha) message_end() } }
Сообщение отредактировал HoRRoR - Суббота, 08.08.2009, 23:21:33 |
|
| |
defaultNick8433 | Дата: Суббота, 08.08.2009, 23:22:24 | Сообщение # 5 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Quote (HoRRoR) MsgChat у меня не хочет выводить %d =((( Что именно не хочет выводить
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
HoRRoR | Дата: Суббота, 08.08.2009, 23:29:49 | Сообщение # 6 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| например он вместо числа так и пишет в чате %d также где %s всё время пишет ник, который активировал событие оО (впринципе мне только ник и надо, но на будущее, мало ли)
|
|
| |
HoRRoR | Дата: Суббота, 08.08.2009, 23:30:33 | Сообщение # 7 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| т.к. форум убил форматирование, приаттачил исходник
|
|
| |
defaultNick8433 | Дата: Воскресенье, 09.08.2009, 11:22:59 | Сообщение # 8 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| is_nemesis_chance не может отвечать за сообщение,поэтому и выводится в чат %d.А что вобще обозначать должно is_nemesis_chance. MsgChat(dinner,MSG_ALL,"^x04[EXODUS]^x01 Player ^x03%s^x01 is a nemesis!") Замени на это format(text,99,"^x03%s^x01 is nemesis",name)
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
HoRRoR | Дата: Воскресенье, 09.08.2009, 12:10:13 | Сообщение # 9 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| defaultNick8433, какой сейчас шанс, что появится немезис
|
|
| |
defaultNick8433 | Дата: Воскресенье, 09.08.2009, 18:17:15 | Сообщение # 10 |
Генерал-полковник
Группа: Скриптеры
Сообщений: 806
Статус: Не в сети
| Причём здесь немезис,те что надо то
Раскручиваю сайты,ставлю трекера на хостинг.Всё бесплатно.Если заинтересовало,то моя аська 400538001
|
|
| |
HoRRoR | Дата: Воскресенье, 09.08.2009, 19:50:21 | Сообщение # 11 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| уже не надо, решил проблемму, спионерив код zp_colored_print из ядра ZP
|
|
| |
egor_haker | Дата: Воскресенье, 09.08.2009, 23:43:38 | Сообщение # 12 |
Майор
Группа: Пользователи
Сообщений: 99
Статус: Не в сети
| а где карты можно скачать? Добавлено (2009-08-09, 11:43 Pm) --------------------------------------------- скрипт не работает! при compile ошибку выдает и не одну!
мой сайт http://cs-mapping.ucoz.net
|
|
| |
HoRRoR | Дата: Понедельник, 10.08.2009, 00:02:01 | Сообщение # 13 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| egor_haker, как бэ мод еще не готов и я ничего в инет не выкладывал
|
|
| |
egor_haker | Дата: Понедельник, 10.08.2009, 18:00:14 | Сообщение # 14 |
Майор
Группа: Пользователи
Сообщений: 99
Статус: Не в сети
| Quote (HoRRoR) как бэ мод еще не готов и я ничего в инет не выкладывал ну тогда сори, я думал плагин выложин чтоб люди смогли его оценить! Мой ник cs-mapping "Hedgehog"
мой сайт http://cs-mapping.ucoz.net
|
|
| |
HoRRoR | Дата: Пятница, 14.08.2009, 13:46:17 | Сообщение # 15 |
Полковник
Группа: Скриптеры
Сообщений: 181
Статус: Не в сети
| сделал два видео: http://www.youtube.com/watch?v=LONuRFEW9Ac http://www.youtube.com/watch?v=JdpXYEtQ57A
|
|
| |
| AMX Mod X Russian Community © 2006-2025 | |
|
| |