Posted: Tue Nov 30, 2004 4:06 am
yeah same i go to bed 5:00 am here damn script and Thx strafer for the help i am trying a new thing with waittil death .
hope to see you tomorrow
hope to see you tomorrow
Code: Select all
bomb_thinker2:
level.bomb_defuse_time = 40 //tenths of a second
level.bomb_set_time = 50 //tenths of a second
level.bomb_tick_time = 15 //seconds
level.bomb_explosion_radius = 1054 //quake units
level.bomb_use_distance = 128 //quake units
level.bomb_damage = 200
level.bombusefov = 30
level.subtitleX = 100
level.subtitleY = 50
self.live = 0
if (self.target != NIL && self.target != NULL && $(self.target) != NULL)
{
self.target.collisionent = self.target.target
self.target notsolid
}
$bomb2 thread bomb_waittill_set2
end
bomb_waittill_set2 $bomb2:
self model items/pulse_explosive.tik
while ( $(self.trigger_name) )
{
self.trigger_name waittill trigger
local.player = parm.other
if (local.player.dmteam != allies)
{
goto bomb_waittill_set2 $bomb2
println "failed dmteam check" local.player.dmteam
}
local.counter = 0
while ( (Isalive local.player) && (local.player cansee self level.bombusefov level.bomb_use_distance) && (local.player.useheld == 1) && self.live == 0 )
{
if (local.counter == 0)
local.player stopwatch (level.bomb_set_time * .1)
local.counter++
wait 0.1
if (local.counter >= level.bomb_set_time)
{
iprintlnbold ( loc_convert_string "The Allies have planted a bomb!" )
if (level.planting_team == "allies")
self playsound dfr_objective_o
else
self playsound den_objective_o
$bomb2 thread bomb_waittill_defuse2
$bomb2 thread bomb_waittill_explode2
self.live = 1
end
}
}
if (local.counter > 0)
local.player stopwatch 0
}
end
bomb_waittill_defuse2 $bomb2:
while ( $(self.trigger_name) )
{
self.trigger_name waittill trigger
local.player = parm.other
if (local.player.dmteam != axis)
{
println "failed dmteam check" local.player.dmteam
goto bomb_waittill_defuse2 $bomb2
}
local.counter = 0
while ( (Isalive local.player) && (local.player cansee self level.bombusefov level.bomb_use_distance) && (local.player.useheld == 1) && self.live == 1 )
{
if (local.counter == 0)
local.player stopwatch (level.bomb_defuse_time * .1)
local.counter++
wait 0.1
if (local.counter >= level.bomb_defuse_time)
{
iprintlnbold ( loc_convert_string "The Allies bomb has been defused!" )
if (level.defusing_team == "allies")
self playsound dfr_diffused_d
else
self playsound den_diffused_d
thread bomb_waittill_set2 $bomb2//start first thread again
self.live = 0
end
}
}
if (local.counter > 0)
local.player stopwatch 0
}
end
bomb_waittill_explode2 $bomb2:
self model items/explosive.tik
self playsound plantbomb
self loopsound bombtick
local.start_time = level.time
while (level.time < (local.start_time + level.bomb_tick_time) )
{
wait 0.1
if (self.live != 1)
{
self stoploopsound
end
}
if (level.time == (local.start_time + level.bomb_tick_time - 10) )
{
self stoploopsound
self loopsound final_countdown
}
}
self stoploopsound
$bomb2 thread bomb_explode2
end
bomb_explode2 $bomb2:
//self.trigger_name remove
thread global/obj_dm.scr::jitter_large 0
if (self.exploder_set != NIL)
{
thread global/exploder.scr::explode self.exploder_set
}
if (self.explosion_fx != NIL)
self thread global/obj_dm.scr::spawn_fx self.explosion_fx
if (self.explosion_sound != NIL)
self playsound self.explosion_sound
if (self.target != NIL && self.target != NULL && self.target != "" && self.target.size == 1)
{
if (self.target.destroyed_model != NIL)
{
local.damaged = self.target thread spawn_damaged self.target.destroyed_model
}
if (self.exploder_set == NIL)
{
self.target remove
}
waitframe
}
radiusdamage self.origin level.bomb_damage level.bomb_explosion_radius
if (self.killarea != NIL)
{
self.killarea volumedamage 1000
}
self hide
self notsolid
//self remove
$exploder2 remove
iprintlnbold "Subatomic energy destroyed.Earth is saved"
self.live = 0
level.allies_obj++
$bomb2.exploded = 1
wait 0.5
end
check_axis_bomb:
while(1)
{
for(local.i=1;local.i<=$player.size;local.i++)
{
if(($bomb2.exploded == 1) && $player[local.i].dmteam=="axis")
{
$player[local.i] waittill death
}
if($player[local.i].dead == 0)
{
$player[local.i].dead = 1
}
else
{
$player[local.i] thread prevent_axis_spawn
}
wait .1
}
}
end
prevent_axis_spawn:
while(1)
{
if($player[local.i].dead == 1)
{
$player[local.i] takeall
$player[local.i] hide
$player[local.i] notsolid
$player[local.i] noclip
}
wait .1
}
end Code: Select all
level waittill prespawn
//obj.
level.dmrespawning = 1 // 1 **wave based** or 0 **round based**
level.dmroundlimit = 5 // round time limit in minutes
level.clockside = allies // set to axis, allies, kills, or draw
//threads
thread spawn_switch
thread spawn_switch1
thread documents
//thread prevent_player_spawn
//move objects
$bomb_switch moveup 40
$bomb_switch move
$bomb_switch1 moveup 40
$bomb_switch1 move
$spawn_kill hide
$spawn_kill1 hide
//*** Precache Dm Stuff
exec global/DMprecache.scr
exec global/door_locked.scr::lock
level.script = maps/dm/mohdm2.scr
exec global/ambient.scr mohdm2
level waittill spawn
waitthread global/objectives.scr::add_objectives 1 2 "Get the documents."
waitthread global/objectives.scr::current_objectives 1
end
//steal documents------------------------------------------------------------
objective1:
$documents remove
wait 5
goto objective
end
//objective complete---------------------------------------------------------
objective:
waitthread global/objectives.scr::add_objectives 1 3 "Get the documents."
waitthread global/objectives.scr::current_objectives 0
wait 3
end
//spawn_bomber---------------------------------------------------------------
spawn_switch:
$bomb_trigger triggerable
$bomb_trigger waittill trigger
$bomb_trigger playsound alarm_switch
$bomb_switch anim turnon
$bomb_switch light 1 0 0 200
$bomb_trigger playsound airplane6
wait 5
$spawn_kill anim start
wait 3
$bomb_switch anim turnoff
$bomb_trigger playsound alarm_switch
$spawn_kill anim remove
$bomb_switch light 0 0 0 200
$bomb_trigger nottriggerable
wait 9
goto spawn_switch
end
//spawn_bomber1--------------------------------------------------------------
spawn_switch1:
$bomb_trigger1 triggerable
$bomb_trigger1 waittill trigger
$bomb_trigger1 playsound alarm_switch
$bomb_switch1 anim turnon
$bomb_switch1 light 1 0 0 200
wait 5
$bomb_trigger1 playsound airplane6
wait 13
$spawn_kill1 anim start
wait 3
$bomb_switch1 anim turnoff
$bomb_trigger1 playsound alarm_switch
$spawn_kill1 anim remove
$bomb_switch1 light 0 0 0 200
$bomb_trigger1 nottriggerable
wait 9
goto spawn_switch1
end