Ok...I Don't know what change I possibly could have made to the script, but it doesn't excecute itself in the game anymore...can't see the objectives in the tab menu when playing..or do them...well here it is:
main:
level waittill prespawn
exec global/DMprecache.scr
level.script = maps/obj/obj_territory.scr
exec global/ambient.scr m4l1
exec global/door_locked.scr::lock
setcvar "g_obj_alliedtext1" "Destroy the Flak88"
setcvar "g_obj_alliedtext2" "Defend the stolen"
setcvar "g_obj_alliedtext3" "Documents"
setcvar "g_obj_axistext1" "Defend the Flakk88"
setcvar "g_obj_axistext2" "Retrieve the stolen"
setcvar "g_obj_axistext3" "Documents"
setcvar "g_scoreboardpic" "none"
level waittill spawn
thread controls
level.bomb_damage = 300
level.bomb_explosion_radius = 650
level.defusing_team = "axis"
level.planting_team = "allies"
level.targets_to_destroy = 1
level.dmrespawning = 1
level.dmroundlimit = 15
level.clockside = draw
level waittill roundstart
$flak88_explosive1 thread global/obj_dm.scr::bomb_thinker
$flak88_explosive1 thread axis_win_timer
thread allies_win_bomb
end
axis_win_timer:
level waittill axiswin
end
allies_win_bomb:
while(level.targets_destroyed < level.targets_to_destroy)
waitframe
teamwin allies
end
controls:
local.light = $el
local.door = $ed
local.trigger = $et
local.switch = $es
local.elevator = $e
local.light bind local.elevator
local.door bind local.elevator
local.switch bind local.elevator
local.trigger bind local.elevator
local.elevator time 8
while(1)
{
local.trigger waittill trigger
local.switch anim move
local.trigger nottriggerable
wait 1
local.door movedown 128
wait 3
local.elevator loopsound Mec_ElevatorRun_01
local.elevator moveup 1498
local.elevator waitmove
local.elevator stoploopsound
wait 3
local.door moveup 128
wait 2
local.switch anim move
local.trigger triggerable
local.trigger waittill trigger
local.switch anim move
local.trigger nottriggerable
wait 1
local.door movedown 128
wait 3
local.elevator loopsound Mec_ElevatorRun_01
local.elevator movedown 1498
local.elevator waitmove
local.elevator stoploopsound
wait 3
local.door moveup 128
wait 2
local.switch anim move
local.trigger triggerable
end
}
waitframe
}
end
Can someone please tell me all the possible things that could have gotten messed up?
Oh yah...and if anyone finds out what is wrong with that script, can you please tell me how I can add the following script to the last one...the script above is the script for the flak88, and the elevator...along with all the basic map stuff....the following script is for the Capture the documents script...it works fine alone...here it is:
// OBJ_Territory
// ARCHITECTURE: GoldenEye/Dragon
// SCRIPTING: GoldenEye/Dragon
main:
level waittill prespawn
exec global/DMprecache.scr
level.script = maps/obj/obj_territory.scr
exec global/ambient.scr
level waittill spawn
// Set the parameters for round based match
level.dmrespawning = 1
level.dmroundlimit = 15
level.clockside = allies
// level waittill roundstart // Comment out this line using '//' before it to be able to set the bomb when alone on the map ( just for testing )
thread desk_document_check // Start the win check thread for allies
level waittill allieswin // If the end of the match is reached, the Allies win
end
// Document checks
desk_document_check:
while(1)
{ $documents_trigger waittill trigger // Dont execute past this line until someone triggers the object
if (parm.other.dmteam == axis)
{ // parm.other is the triggerer ( testing here to ensure only axis can complete the ojective )
$documents hide // make the document graphix disappear
break // exit the while loop
}
waitframe // protection against making this thread use too much CPU
}
teamwin axis // make axis win the match
end
So if anyone can fix the first script and combine it with the second one so both objectives and the elevator all work...that would be great, thanks!
GoldenEye
Script Suddenly Stopped Excecuting...
Moderator: Moderators
-
Goldeneye090
- Colour Sergeant
- Posts: 79
- Joined: Mon May 10, 2004 10:11 pm
-
Green Beret
- Major General
- Posts: 746
- Joined: Mon Apr 19, 2004 12:21 pm
- Contact:
In your controls thread you have an odd number of brackets
while(1)
{
....
....
local.trigger triggerable
end
}
waitframe
}
end
for every { you need 1 } you have 2 }'s
also if you are going to have a while(1) loop don't have the word end inside the loop maybe take out the end and the } after the local.trigger triggerable line at the bottom of the thread
while(1)
{
....
....
local.trigger triggerable
end
}
waitframe
}
end
for every { you need 1 } you have 2 }'s
also if you are going to have a while(1) loop don't have the word end inside the loop maybe take out the end and the } after the local.trigger triggerable line at the bottom of the thread
-
Green Beret
- Major General
- Posts: 746
- Joined: Mon Apr 19, 2004 12:21 pm
- Contact:
-
Goldeneye090
- Colour Sergeant
- Posts: 79
- Joined: Mon May 10, 2004 10:11 pm
...
How did I...But...Wo...Thanks a lot! It works again.
Do you know how to combine the two scripts so the documents work too? (The capture-the-documents script works successfully by itself)
So I need the following two scripts to be combined:
main:
level waittill prespawn
exec global/DMprecache.scr
level.script = maps/obj/obj_territory.scr
exec global/ambient.scr m4l1
exec global/door_locked.scr::lock
setcvar "g_obj_alliedtext1" "Destroy the Flak88"
setcvar "g_obj_alliedtext2" "Defend the stolen"
setcvar "g_obj_alliedtext3" "Documents"
setcvar "g_obj_axistext1" "Defend the Flakk88"
setcvar "g_obj_axistext2" "Retrieve the stolen"
setcvar "g_obj_axistext3" "Documents"
setcvar "g_scoreboardpic" "none"
level waittill spawn
thread controls
level.bomb_damage = 300
level.bomb_explosion_radius = 650
level.defusing_team = "axis"
level.planting_team = "allies"
level.targets_to_destroy = 1
level.dmrespawning = 1
level.dmroundlimit = 15
level.clockside = draw
// level waittill roundstart
$flak88_explosive1 thread global/obj_dm.scr::bomb_thinker
$flak88_explosive1 thread axis_win_timer
thread allies_win_bomb
end
axis_win_timer:
level waittill axiswin
end
allies_win_bomb:
while(level.targets_destroyed < level.targets_to_destroy)
waitframe
teamwin allies
end
controls:
local.light = $el
local.door = $ed
local.trigger = $et
local.switch = $es
local.elevator = $e
local.light bind local.elevator
local.door bind local.elevator
local.switch bind local.elevator
local.trigger bind local.elevator
local.elevator time 8
while(1)
{
local.trigger waittill trigger
local.switch anim move
local.trigger nottriggerable
wait 1
local.door movedown 128
wait 3
local.elevator loopsound Mec_ElevatorRun_01
local.elevator moveup 1498
local.elevator waitmove
local.elevator stoploopsound
wait 3
local.door moveup 128
wait 2
local.switch anim move
local.trigger triggerable
local.trigger waittill trigger
local.switch anim move
local.trigger nottriggerable
wait 1
local.door movedown 128
wait 3
local.elevator loopsound Mec_ElevatorRun_01
local.elevator movedown 1498
local.elevator waitmove
local.elevator stoploopsound
wait 3
local.door moveup 128
wait 2
local.switch anim move
local.trigger triggerable
waitframe
}
end
and
// OBJ_Territory
// ARCHITECTURE: GoldenEye/Dragon
// SCRIPTING: GoldenEye/Dragon
main:
level waittill prespawn
exec global/DMprecache.scr
level.script = maps/obj/obj_territory.scr
exec global/ambient.scr
level waittill spawn
// Set the parameters for round based match
level.dmrespawning = 1
level.dmroundlimit = 15
level.clockside = allies
// level waittill roundstart // Comment out this line using '//' before it to be able to set the bomb when alone on the map ( just for testing )
thread desk_document_check // Start the win check thread for allies
level waittill allieswin // If the end of the match is reached, the Allies win
end
// Document checks
desk_document_check:
while(1)
{ $documents_trigger waittill trigger // Dont execute past this line until triggered
if (parm.other.dmteam == axis)
{ // parm.other is the triggerer
$documents hide
break // exit the while loop
}
waitframe
}
teamwin axis
end
Oh yah...I also want it to be set where if the end of the match is reached, it's a draw...
level waittill allieswin // If the end of the match is reached, the Allies win
I wasn't sure if that line in the script should be changed to level waittill drawwin so I didn't take a chance...but I need to know every line that needs to be changed to make it a draw if the time runs out...Thanks again!
GoldenEye
Do you know how to combine the two scripts so the documents work too? (The capture-the-documents script works successfully by itself)
So I need the following two scripts to be combined:
main:
level waittill prespawn
exec global/DMprecache.scr
level.script = maps/obj/obj_territory.scr
exec global/ambient.scr m4l1
exec global/door_locked.scr::lock
setcvar "g_obj_alliedtext1" "Destroy the Flak88"
setcvar "g_obj_alliedtext2" "Defend the stolen"
setcvar "g_obj_alliedtext3" "Documents"
setcvar "g_obj_axistext1" "Defend the Flakk88"
setcvar "g_obj_axistext2" "Retrieve the stolen"
setcvar "g_obj_axistext3" "Documents"
setcvar "g_scoreboardpic" "none"
level waittill spawn
thread controls
level.bomb_damage = 300
level.bomb_explosion_radius = 650
level.defusing_team = "axis"
level.planting_team = "allies"
level.targets_to_destroy = 1
level.dmrespawning = 1
level.dmroundlimit = 15
level.clockside = draw
// level waittill roundstart
$flak88_explosive1 thread global/obj_dm.scr::bomb_thinker
$flak88_explosive1 thread axis_win_timer
thread allies_win_bomb
end
axis_win_timer:
level waittill axiswin
end
allies_win_bomb:
while(level.targets_destroyed < level.targets_to_destroy)
waitframe
teamwin allies
end
controls:
local.light = $el
local.door = $ed
local.trigger = $et
local.switch = $es
local.elevator = $e
local.light bind local.elevator
local.door bind local.elevator
local.switch bind local.elevator
local.trigger bind local.elevator
local.elevator time 8
while(1)
{
local.trigger waittill trigger
local.switch anim move
local.trigger nottriggerable
wait 1
local.door movedown 128
wait 3
local.elevator loopsound Mec_ElevatorRun_01
local.elevator moveup 1498
local.elevator waitmove
local.elevator stoploopsound
wait 3
local.door moveup 128
wait 2
local.switch anim move
local.trigger triggerable
local.trigger waittill trigger
local.switch anim move
local.trigger nottriggerable
wait 1
local.door movedown 128
wait 3
local.elevator loopsound Mec_ElevatorRun_01
local.elevator movedown 1498
local.elevator waitmove
local.elevator stoploopsound
wait 3
local.door moveup 128
wait 2
local.switch anim move
local.trigger triggerable
waitframe
}
end
and
// OBJ_Territory
// ARCHITECTURE: GoldenEye/Dragon
// SCRIPTING: GoldenEye/Dragon
main:
level waittill prespawn
exec global/DMprecache.scr
level.script = maps/obj/obj_territory.scr
exec global/ambient.scr
level waittill spawn
// Set the parameters for round based match
level.dmrespawning = 1
level.dmroundlimit = 15
level.clockside = allies
// level waittill roundstart // Comment out this line using '//' before it to be able to set the bomb when alone on the map ( just for testing )
thread desk_document_check // Start the win check thread for allies
level waittill allieswin // If the end of the match is reached, the Allies win
end
// Document checks
desk_document_check:
while(1)
{ $documents_trigger waittill trigger // Dont execute past this line until triggered
if (parm.other.dmteam == axis)
{ // parm.other is the triggerer
$documents hide
break // exit the while loop
}
waitframe
}
teamwin axis
end
Oh yah...I also want it to be set where if the end of the match is reached, it's a draw...
level waittill allieswin // If the end of the match is reached, the Allies win
I wasn't sure if that line in the script should be changed to level waittill drawwin so I didn't take a chance...but I need to know every line that needs to be changed to make it a draw if the time runs out...Thanks again!
GoldenEye
As far as who wins when the clock runs out then here is your answer
level.clockside = allies // set to axis, allies, kills, or draw
As far as the documents part goes the most important thing is how the game gets to the line
teamwin axis
or
teamwin allies
As soon as your script executes either one of those lines then obviously one or the other team will win . So it is simple instead of this thread in the first part
axis_win_timer:
level waittill axiswin
end
use the documents thread instead .
level.clockside = allies // set to axis, allies, kills, or draw
As far as the documents part goes the most important thing is how the game gets to the line
teamwin axis
or
teamwin allies
As soon as your script executes either one of those lines then obviously one or the other team will win . So it is simple instead of this thread in the first part
axis_win_timer:
level waittill axiswin
end
use the documents thread instead .

