instructions are all provided in the readme which is posted with the mod here :
http://www.mods-r-us.net/page.php?id=162
Well erm here it is.. basicly if you are spec or you are dead you are sent to cameras instead of following players, these are easy to set up for everymap however if you are cautious on giving teams an advantage i would not suggest using for obj maps altought they will still work, works for all version of moh however u must set up your own map files.. there are 2 ways to do them, from rotating from angle to angle or from keeping them still
Code: Select all
main local.origin local.start_x local.min_angle local.max_angle local.start_z:
if(local.origin == NIL)
{
end
}
if(local.start_x == NIL)
{
local.start_x = 0
}
if(local.min_angle == NIL)
{
local.min_angle = 0
}
if(local.max_angle == NIL)
{
local.max_angle = 90
}
if(local.start_z == NIL)
{
local.start_z = 0
}
if(level.cams == NIL)
{
level.cams[1][1] = local.origin
level.cams[1][2] = local.start_x
level.cams[1][3] = local.min_angle
level.cams[1][4] = local.max_angle
level.cams[1][5] = local.start_z
}
else
{
local.manycams = level.cams.size
local.manycams ++
level.cams[local.manycams][1] = local.origin
level.cams[local.manycams][2] = local.start_x
level.cams[local.manycams][3] = local.min_angle
level.cams[local.manycams][4] = local.max_angle
level.cams[local.manycams][5] = local.start_z
}
local.fwd = 1
wait 1
while(1)
{
waitframe
local.player = $player
if(local.player == NIL || local.player == NULL)
{
end
}
while(isalive local.player && local.player.dmteam != "spectator")
{
waitframe
}
if(local.lastcam == NIL)
{
local.lastcam = randomint(level.cams.size)
level.origin = level.cams[local.lastcam][1]
level.start_x = level.cams[local.lastcam][2]
level.min_angle = level.cams[local.lastcam][3]
level.max_angle = level.cams[local.lastcam][4]
level.start_z = level.cams[local.lastcam][5]
}
else
{
local.lastcam ++
if(local.lastcam > level.cams.size)
{
local.lastcam = 1
}
}
local.cam = "cam" + randomint
local.camera = spawn Camera targetname local.cam origin level.cams[local.lastcam][1]
local.cam_trigger = spawn TriggerCameraUse target local.cam
local.cam_trigger doUse local.player
local.camera targetname ""
if((int(level.cams[local.lastcam][3])) < (int(level.cams[local.lastcam][4])))
{
local.start_y = level.cams[local.lastcam][3]
}
if((int(level.cams[local.lastcam][4])) < (int(level.cams[local.lastcam][3])))
{
local.start_y = level.cams[local.lastcam][4]
}
if((int(level.cams[local.lastcam][4])) == (int(level.cams[local.lastcam][3])))
{
local.start_y = level.cams[local.lastcam][3]
}
while((!(isalive local.player)) || local.player.dmteam == spectator)
{
if(local.player.useheld)
{
while(local.player.useheld)
{
waitframe
}
break
}
if(level.cams[local.lastcam][2] == NIL || local.start_y == NIL || level.cams[local.lastcam][5] == NIL)
{
break
}
if(level.cams[local.lastcam][3] != level.cams[local.lastcam][4])
{
if(local.fwd == 1)
{
local.start_y += 2
if(local.start_y >= (int(level.cams[local.lastcam][4])))
{
local.fwd = 0
}
}
else
{
local.start_y -= 2
if(local.start_y <= (int(level.cams[local.lastcam][3])))
{
local.fwd = 1
}
}
local.camera.angles = ( level.cams[local.lastcam][2] local.start_y level.cams[local.lastcam][5] )
waitframe
}
else
{
local.camera.angles = ( level.cams[local.lastcam][2] local.start_y level.cams[local.lastcam][5] )
waitframe
}
}
local.cam_trigger remove
local.camera remove
}
end