1.) Green laser where the Air strike is called
2.) Cool screen shake throughout the map, when Air strike occurs (Just for effects)
3.) Perfect sounds
Credits:-
Me:- Code
MW3 (Game) :- Idea
To Do: -
Nothing, this is a complete plugin
Bugs : -
None. Report if u find any.
Authors Note:-
Any suggestions, requests, ideas etc are welcomed, but post them here dont PM me !!!
Hope u all like it
I'm posting this here because ppl no longer read the Sub plugin submission section
Cvars:-
zp_strike_mode - (Def - 1) 1 = Damage mode, 2 = Kill mode
zp_strike_delay - (Def - 5.0) Delay before the airstrike is called (Note it's a decimal value keep it that way)
zp_strike_damage - (Def 5000.0) (Note it's a decimal value keep it that way)
zp_strike_radius - (Def - 500.0) (Again it's a decimal value keep it that way)
he-he, u did that what I did in 2012
good job, Catastrophe
I'll test your plugin on my servers
ps
my code is ugly and call server crash, don't know why, but i forgot about strike...
ps2
and yeah, on some maps bombs explode on the invisible roof and don't make damage propah
with this cost players sayz that strike is sucks and I've nothing to say to them, they right...
good job, Catastrophe
I'll test your plugin on my servers
Ty, use it all u like
Quote:
Originally Posted by last_hope
ps
my code is ugly and call server crash, don't know why, but i forgot about strike...
Like i said, this is the perfect code of it's kind ...
Quote:
Originally Posted by last_hope
ps2
and yeah, on some maps bombs explode on the invisible roof and don't make damage propah
with this cost players sayz that strike is sucks and I've nothing to say to them, they right...
Tested... Well, sorry, this is another type of airstrike.
Here is that, what I edit:
Spoiler
PHP Code:
/* Air Raid
A Request Slay Plugin
by CubicVirtuoso
September, 2005
Requested by: PsyCotiCtron
Optimized for all mods
Admins are able to trigger a set of events first starting with a siren, then a public announcement
followed by plane sounds and bombs dropping from the sky following on random locations. Also
included is the command to trigger the air raid.
**COMMANDS**
amx_airraid :: Triggers the air-raid sequence of events
// Declaring info variables
new PLUGIN[]="[ZP50] Air Raid"
new AUTHOR[]="CubicVirtuoso"
new VERSION[]="1.0b"
new inuse = 0 // variable to tell whether used already or not
new donebombs = MAXBOMBS // tells the engine how many bombs are finished dropping
new bombs[MAXBOMBS] // bomb array
new Float:timers[MAXBOMBS] // timers array
new SpriteExplosion
new g_airr
new g_id
public zp_fw_items_select_pre(id, itemid, ignorecost)
{
// This is not our item
if (itemid != g_airr)
return ZP_ITEM_AVAILABLE;
// only available to zombies
if (zp_core_is_zombie(id))
return ZP_ITEM_DONT_SHOW;
return ZP_ITEM_AVAILABLE;
}
// Buy some extra items
public zp_fw_items_select_post(id, itemid, ignorecost)
{
// Our extra item
if (itemid == g_airr)
{
new player_name[32]
get_user_name(id, player_name, 31)
CMD_airraid(id)
set_dhudmessage(255, 0, 255, -1.0, 0.17, 2, 2.0, 8.0, 0.1, 0.1, false)
show_dhudmessage(id, "%s called the air strike!", player_name)
}
return PLUGIN_CONTINUE
}
public CMD_airraid(id)
{
// if (id == 0) id = 1
// server_cmd("say DEBUG: airraid called")
// g_ig = id
new k
// if (!cmd_access(id, level, cid, 1)) // Checks if the command user has access
// return PLUGIN_HANDLED
if (inuse == 1 && donebombs != MAXBOMBS)
{
client_print(id, print_chat, "You must wait longer before issuing another air strike")
return PLUGIN_HANDLED
}
public ACT_explodebomb(posistion)
{
new location[3]
new Float:Vec[3]
IVecFVec(location, Vec)
entity_get_vector(bombs[posistion], EV_VEC_origin, Vec)
FVecIVec(Vec, location)
location[2] = location[2] + 20
CRT_explosion(location, SpriteExplosion, 25, 10, 0)
REM_bomb(posistion)
new players[32]
new playercount
// get_players(players,playercount,"a")
for (new m=0; m<33; m++)
{
// server_cmd("say DEBUG: check players")
if (is_user_alive(m))
{
// server_cmd("say DEBUG: check players")
if (zp_core_is_zombie(m) || zp_class_nemesis_get(m))
{
new playerlocation[3]
new resultdistance
bombs[i] = create_entity("info_target") // creates the bombs
if (!bombs[i]) // if not exist
return PLUGIN_HANDLED
entity_set_string(bombs[i], EV_SZ_classname, "Bomb") // set name
entity_set_edict(bombs[i], EV_ENT_owner, id) // set owner
entity_set_int(bombs[i], EV_INT_solid, 1) // not a solid but interactive
entity_set_int(bombs[i], EV_INT_movetype, 6) // set move type to toss
entity_set_model(bombs[i], "models/rpgrocket.mdl") // enterance sprite
entity_set_origin(bombs[i], LocVec) // start posistion
entity_set_vector(bombs[i], EV_VEC_velocity, VeloVec) // follow velocity
DispatchSpawn(bombs[i]) // Dispatches the Fire
}
for (new k = 0; k<MAXBOMBS; k++)
{
set_task(timers[k], "ACT_explodebomb", k)
}
return PLUGIN_CONTINUE
}
public ACT_resetraid()
{
inuse = 0
return PLUGIN_CONTINUE
}
public ACT_stopsound()
{
client_cmd(0,"stopsound") // stops sound on all clients
return PLUGIN_CONTINUE
}