Re: [WIP] Large Singleplayer Project
Posted: 23 Feb 2013, 16:15
by CarThief
Not sure if that many of my old maps turned out that well, though some had a few interesting concepts not done before at that time, they certainly where a bit lacking on strategic placement of stuff and general construction.
But i suppose everyone starts somewhere... :P
I just cant seem to get the RC mission to work very properly though. Despite the countless failsafes and measures, the mission crashes the game if exited and attempted 2-3 times in a row, and sometimes the mission crashes while failing in various ways too. Oh, and the Tanks refuse to open fire to the Generator when they're in place, but that issue is probaly child's play compared to this weird crash problem, and i can probaly figure that out myself, hm, perhaps they're too far...?
I think i'll have to scrap that idea, because for some reason RC cars are very difficult to work properly with in missions. I built several delays in the script to make sure the player is no longer controlling the car as the mission fails, but that didnt help alot either. Its just very unstable and hard to work with for some reason.
I guess here's the script if curious. (772 Lines long, so it'll scroll quite a bit.)
[mis]//TOY CAR MADNESS! - Idea by Pyro.
//Scrapped untill fixed somehow.
//Mission declares and counters.
CAR_DATA ZB4_PlayerCar
CAR_DATA ZB4_FollowRC1
CAR_DATA ZB4_FollowRC2
CAR_DATA ZB4_FollowRC3
CAR_DATA ZB4_AttackRC1
CAR_DATA ZB4_AttackRC2
CAR_DATA ZB4_AttackRC3
CAR_DATA ZB4_AttackRC4
CAR_DATA ZB4_AttackRC5
CAR_DATA ZB4_GuardRC1
CAR_DATA ZB4_GuardRC2
CAR_DATA ZB4_GuardRC3
CAR_DATA ZB4_GuardRC4
CAR_DATA ZB4_Tank1
CAR_DATA ZB4_Tank2
CAR_DATA ZB4_Tank3
CAR_DATA ZB4_Tank4
CAR_DATA ZB4_Tank5
CAR_DATA ZB4_Jeep1
CAR_DATA ZB4_Jeep2
CAR_DATA ZB4_Jeep3
CAR_DATA ZB4_Jeep4
CAR_DATA ZB4_Van
CAR_DATA ZB4_Transport1
CAR_DATA ZB4_Transport2
CHAR_DATA ZB4_PlayerCarTarget
CHAR_DATA ZB4_TankDriver1
CHAR_DATA ZB4_TankDriver2
CHAR_DATA ZB4_TankDriver3
CHAR_DATA ZB4_TankDriver4
CHAR_DATA ZB4_TankDriver5
CHAR_DATA ZB4_JeepDriver1
CHAR_DATA ZB4_JeepDriver2
CHAR_DATA ZB4_JeepDriver3
CHAR_DATA ZB4_JeepDriver4
CHAR_DATA ZB4_Driver1
CHAR_DATA ZB4_Driver2
CHAR_DATA ZB4_Driver3
CAR_DATA ZB4_Guard1
CAR_DATA ZB4_Guard2
CAR_DATA ZB4_Guard3
CAR_DATA ZB4_Guard4
CHAR_DATA ZB4_TransportDriver1
CHAR_DATA ZB4_TransportDriver2
OBJ_DATA ZB4_Generator
OBJ_DATA ZB4_RCToken
OBJ_DATA ZB4_CarBomb
ARROW_DATA ZB4_Arrow1
ARROW_DATA ZB4_Arrow2
ARROW_DATA ZB4_Arrow3
ARROW_DATA ZB4_Arrow4
ARROW_DATA ZB4_Arrow5
ARROW_DATA ZB4_Arrow6
COUNTER ZB4_Attack1 = 0 //Toggles RC cars to switch from following to attacking.
COUNTER ZB4_Attack2 = 0
COUNTER ZB4_Attack3 = 0
COUNTER ZB4_Attack4 = 0
COUNTER ZB4_Attack5 = 0
COUNTER ZB4_Attack6 = 0
COUNTER ZB4_TankAttack1 = 0//Toggle tanks firing at Generator.
COUNTER ZB4_TankAttack2 = 0
COUNTER ZB4_TankAttack3 = 0
COUNTER ZB4_TankAttack4 = 0
COUNTER ZB4_TankAttack5 = 0
COUNTER ZB4_AttackFinal = 0
COUNTER ZB4_Timer = 0 //Internal timer.
TIMER_DATA ZB4_Visual
COUNTER ZB4_BombReady = 0
COUNTER ZB4_Exploded1 = 0//To keep carbomb explosions one-time. More stable.
COUNTER ZB4_Exploded2 = 0
COUNTER ZB4_Exploded3 = 0
COUNTER ZB4_Progress = 0
COUNTER ZB4_RemoteControlling = 0
COUNTER ZB4_Passed = 0
COUNTER ZB4_Failed = 0
COUNTER ZB4_BombTaken = 0
COUNTER ZB4_BombWait = 0 //Used to make sure carbombing the Van doesnt fail the mission.
COUNTER ZB4_BombTimer = 0//As long as this is not 0 failure will not initiate if the Player car is destroyed.
COUNTER ZB4_Exit = 0 //Enables exiting the mission, more or less.
COUNTER ZB4_ExitTimer = 0//Counts down for exit when mission fails/passes.
FORWARD ZB4_Cleanup://Dont make this the first command in a mission. Try to keep it below Declares.
ZB4_Main:
EXEC
//Setup criticals beforehand.
SET Global_OnMission = 1
SET MissionLoop = 1
STOP_PHONE (Global_ZaibatsuPhone4)//Needed for Blue Phones ONLY.
//Mission stuff between this and WHILE_EXEC.
ZB4_RCToken = CREATE_OBJ (38.5, 48.5, 4.0) 270 REMOTE END
ZB4_Generator = CREATE_OBJ (12.5, 51.5, 2.0) 0 POWERGEN END
ZB4_PlayerCar = CREATE_CAR (39.5, 48.5, 2.0) 2 0 ISETTA MINI_CAR END
GIVE_WEAPON(ZB4_PlayerCar, CAR_MINE)
GIVE_WEAPON(ZB4_PlayerCar, CAR_MINE)
GIVE_WEAPON(ZB4_PlayerCar, CAR_MACHINE_GUN)
GIVE_WEAPON(ZB4_PlayerCar, CAR_MACHINE_GUN)
SET_CAR_ROCKETPROOF(ZB4_PlayerCar, ON)
ZB4_Tank1 = CREATE_CAR (108.5, 50.5, 2.0) -1 270 TANK MINI_CAR END
ZB4_Tank2 = CREATE_CAR (113.5, 51.5, 2.0) -1 270 TANK MINI_CAR END
ZB4_Tank3 = CREATE_CAR (118.5, 50.5, 2.0) -1 270 TANK MINI_CAR END
ZB4_Tank4 = CREATE_CAR (124.5, 51.5, 2.0) -1 270 TANK MINI_CAR END
ZB4_Tank5 = CREATE_CAR (128.5, 50.5, 2.0) -1 270 TANK MINI_CAR END
ZB4_Jeep1 = CREATE_CAR (114.5, 51.5, 2.0) -1 270 GUNJEEP MINI_CAR END
ZB4_Jeep2 = CREATE_CAR (119.5, 50.5, 2.0) -1 270 GUNJEEP MINI_CAR END
ZB4_Jeep3 = CREATE_CAR (125.5, 51.5, 2.0) -1 270 GUNJEEP MINI_CAR END
ZB4_Jeep4 = CREATE_CAR (129.5, 50.5, 2.0) -1 270 GUNJEEP MINI_CAR END
ZB4_TankDriver1 = CREATE_CHAR_INSIDE_CAR (ZB4_Tank1) 4 TANK_DRIVER END
ZB4_TankDriver2 = CREATE_CHAR_INSIDE_CAR (ZB4_Tank2) 4 TANK_DRIVER END
ZB4_TankDriver3 = CREATE_CHAR_INSIDE_CAR (ZB4_Tank3) 4 TANK_DRIVER END
ZB4_TankDriver4 = CREATE_CHAR_INSIDE_CAR (ZB4_Tank4) 4 TANK_DRIVER END
ZB4_TankDriver5 = CREATE_CHAR_INSIDE_CAR (ZB4_Tank5) 4 TANK_DRIVER END
ZB4_JeepDriver1 = CREATE_CHAR_INSIDE_CAR (ZB4_Jeep1) 4 TANK_DRIVER END
ZB4_JeepDriver2 = CREATE_CHAR_INSIDE_CAR (ZB4_Jeep2) 4 TANK_DRIVER END
ZB4_JeepDriver3 = CREATE_CHAR_INSIDE_CAR (ZB4_Jeep3) 4 TANK_DRIVER END
ZB4_JeepDriver4 = CREATE_CHAR_INSIDE_CAR (ZB4_Jeep4) 4 TANK_DRIVER END
SET_CHAR_MAX_DRIVESPEED(ZB4_TankDriver1, 0.04)//0.02
SET_CHAR_MAX_DRIVESPEED(ZB4_TankDriver2, 0.04)
SET_CHAR_MAX_DRIVESPEED(ZB4_TankDriver3, 0.04)
SET_CHAR_MAX_DRIVESPEED(ZB4_TankDriver4, 0.04)
SET_CHAR_MAX_DRIVESPEED(ZB4_TankDriver5, 0.04)
SET_CHAR_MAX_DRIVESPEED(ZB4_JeepDriver1, 0.165)
SET_CHAR_MAX_DRIVESPEED(ZB4_JeepDriver2, 0.165)
SET_CHAR_MAX_DRIVESPEED(ZB4_JeepDriver3, 0.165)
SET_CHAR_MAX_DRIVESPEED(ZB4_JeepDriver4, 0.165)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TankDriver1, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TankDriver2, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TankDriver3, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TankDriver4, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TankDriver5, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_JeepDriver1, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_JeepDriver2, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_JeepDriver3, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_JeepDriver4, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_TankDriver1, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_TankDriver2, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_TankDriver3, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_TankDriver4, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_TankDriver5, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_JeepDriver1, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_JeepDriver2, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_JeepDriver3, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_JeepDriver4, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_TankDriver1, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_TankDriver2, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_TankDriver3, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_TankDriver4, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_TankDriver5, ON)
SET_CHAR_THREAT_SEARCH(ZB4_TankDriver1, NO_THREATS)
SET_CHAR_THREAT_SEARCH(ZB4_TankDriver2, NO_THREATS)
SET_CHAR_THREAT_SEARCH(ZB4_TankDriver3, NO_THREATS)
SET_CHAR_THREAT_SEARCH(ZB4_TankDriver4, NO_THREATS)
SET_CHAR_THREAT_SEARCH(ZB4_TankDriver5, NO_THREATS)
SET_CHAR_THREAT_REACTION(ZB4_TankDriver1, NO_REACTION)
SET_CHAR_THREAT_REACTION(ZB4_TankDriver2, NO_REACTION)
SET_CHAR_THREAT_REACTION(ZB4_TankDriver3, NO_REACTION)
SET_CHAR_THREAT_REACTION(ZB4_TankDriver4, NO_REACTION)
SET_CHAR_THREAT_REACTION(ZB4_TankDriver5, NO_REACTION)
SET_CHAR_OBJECTIVE(ZB4_TankDriver1, GOTO_AREA_IN_CAR, 18.5, 50.5, 2.0)
SET_CHAR_OBJECTIVE(ZB4_TankDriver2, GOTO_AREA_IN_CAR, 18.5, 51.5, 2.0)
SET_CHAR_OBJECTIVE(ZB4_TankDriver3, GOTO_AREA_IN_CAR, 18.5, 50.5, 2.0)
SET_CHAR_OBJECTIVE(ZB4_TankDriver4, GOTO_AREA_IN_CAR, 18.5, 51.5, 2.0)
SET_CHAR_OBJECTIVE(ZB4_TankDriver5, GOTO_AREA_IN_CAR, 18.5, 50.5, 2.0)
SET_CHAR_OBJECTIVE(ZB4_JeepDriver1, FOLLOW_CAR_IN_CAR, ZB4_Tank2)
SET_CHAR_OBJECTIVE(ZB4_JeepDriver2, FOLLOW_CAR_IN_CAR, ZB4_Tank3)
SET_CHAR_OBJECTIVE(ZB4_JeepDriver3, FOLLOW_CAR_IN_CAR, ZB4_Tank4)
SET_CHAR_OBJECTIVE(ZB4_JeepDriver4, FOLLOW_CAR_IN_CAR, ZB4_Tank5)
POINT_ARROW_AT(ZB4_Arrow1, ZB4_Tank1)
SET_ARROW_COLOUR(ZB4_Arrow1, RED)
POINT_ARROW_AT(ZB4_Arrow2, ZB4_Tank2)
SET_ARROW_COLOUR(ZB4_Arrow2, RED)
POINT_ARROW_AT(ZB4_Arrow3, ZB4_Tank3)
SET_ARROW_COLOUR(ZB4_Arrow3, RED)
POINT_ARROW_AT(ZB4_Arrow4, ZB4_Tank4)
SET_ARROW_COLOUR(ZB4_Arrow4, RED)
POINT_ARROW_AT(ZB4_Arrow5, ZB4_Tank5)
SET_ARROW_COLOUR(ZB4_Arrow5, RED)
POINT_ARROW_AT(ZB4_Arrow6, ZB4_RCToken)
DISPLAY_MESSAGE (1269)//TOY CAR MADNESS!
DISPLAY_BRIEF_NOW (1270)//Get the remote and use RC car to stop the Tanks before they blow up the Generator.
ENDEXEC
WHILE_EXEC(MissionLoop = 1)
DO_NOWT//Just in case.
IF(ZB4_Progress = 1)
IF(NOT(ZB4_Timer = 0))
--ZB4_Timer
ENDIF
ENDIF
IF(ZB4_BombWait = 1)
IF(NOT(ZB4_BombTimer = 0))
--ZB4_BombTimer
ENDIF
ENDIF
IF(ZB4_Exit = 1)
IF(NOT(ZB4_ExitTimer = 0))
--ZB4_ExitTimer
ENDIF
ENDIF
//Start remote controlling.
IF((ZB4_RemoteControlling = 0) AND (LOCATE_CHARACTER_ON_FOOT(Player1, 38.5, 48.5, 4.0, 1.0, 1.0)))
SET ZB4_RemoteControlling = 1
REMOVE_ARROW(ZB4_Arrow6)
DELETE_ITEM(ZB4_RCToken)
ZB4_PlayerCarTarget = CREATE_CHAR_INSIDE_CAR (ZB4_PlayerCar) 8 DRONE END
ORDER_CHAR_TO_BACKDOOR (ZB4_PlayerCarTarget, ZB4_PlayerCar)
SET_CHAR_TO_STAY_IN_CAR(ZB4_PlayerCarTarget, ON)
DO_NOWT
TAKE_REMOTE_CONTROL_OF_CAR(Player1, ZB4_PlayerCar)
ENDIF
//If the tanks get close enough, they open fire on the Generator.
IF((ZB4_Progress = 1) AND (ZB4_TankAttack1 = 0))
IF((LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver1, 19.5, 50.5, 2.0, 1.0, 1.0)) OR (LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver1, 19.5, 51.5, 2.0, 1.0, 1.0)))
SET ZB4_TankAttack1 = 1
//SET_CHAR_OBJECTIVE(ZB4_TankDriver1, WAIT_IN_CAR)
STOP_CHAR_DRIVING(ZB4_TankDriver1)
DO_NOWT
MAKE_CHAR_DO_NOTHING(ZB4_TankDriver1)
DO_NOWT
SET_CHAR_OBJECTIVE(ZB4_TankDriver1, FIRE_AT_OBJECT_FROM_VEHICLE, ZB4_Generator)
ENDIF
ENDIF
//-------------------------------
IF((ZB4_Progress = 1) AND (ZB4_TankAttack2 = 0))
IF((LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver2, 19.5, 50.5, 2.0, 1.0, 1.0)) OR (LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver2, 19.5, 51.5, 2.0, 1.0, 1.0)))
SET ZB4_TankAttack2 = 1
//SET_CHAR_OBJECTIVE(ZB4_TankDriver2, WAIT_IN_CAR)
STOP_CHAR_DRIVING(ZB4_TankDriver2)
DO_NOWT
MAKE_CHAR_DO_NOTHING(ZB4_TankDriver2)
DO_NOWT
SET_CHAR_OBJECTIVE(ZB4_TankDriver2, FIRE_AT_OBJECT_FROM_VEHICLE, ZB4_Generator)
ENDIF
ENDIF
//-------------------------------
IF((ZB4_Progress = 1) AND (ZB4_TankAttack3 = 0))
IF((LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver3, 20.5, 50.5, 2.0, 1.0, 1.0)) OR (LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver3, 20.5, 51.5, 2.0, 1.0, 1.0)))
SET ZB4_TankAttack3 = 1
//SET_CHAR_OBJECTIVE(ZB4_TankDriver3, WAIT_IN_CAR)
STOP_CHAR_DRIVING(ZB4_TankDriver3)
DO_NOWT
MAKE_CHAR_DO_NOTHING(ZB4_TankDriver3)
DO_NOWT
SET_CHAR_OBJECTIVE(ZB4_TankDriver3, FIRE_AT_OBJECT_FROM_VEHICLE, ZB4_Generator)
ENDIF
ENDIF
//-------------------------------
IF((ZB4_Progress = 1) AND (ZB4_TankAttack4 = 0))
IF((LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver4, 20.5, 50.5, 2.0, 1.0, 1.0)) OR (LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver4, 20.5, 51.5, 2.0, 1.0, 1.0)))
SET ZB4_TankAttack4 = 1
//SET_CHAR_OBJECTIVE(ZB4_TankDriver4, WAIT_IN_CAR)
STOP_CHAR_DRIVING(ZB4_TankDriver4)
DO_NOWT
MAKE_CHAR_DO_NOTHING(ZB4_TankDriver4)
DO_NOWT
SET_CHAR_OBJECTIVE(ZB4_TankDriver4, FIRE_AT_OBJECT_FROM_VEHICLE, ZB4_Generator)
ENDIF
ENDIF
//-------------------------------
IF((ZB4_Progress = 1) AND (ZB4_TankAttack5 = 0))
IF((LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver5, 21.5, 50.5, 2.0, 1.0, 1.0)) OR (LOCATE_CHARACTER_ANY_MEANS(ZB4_TankDriver5, 21.5, 51.5, 2.0, 1.0, 1.0)))
SET ZB4_TankAttack5 = 1
//SET_CHAR_OBJECTIVE(ZB4_TankDriver5, WAIT_IN_CAR)
STOP_CHAR_DRIVING(ZB4_TankDriver5)
DO_NOWT
MAKE_CHAR_DO_NOTHING(ZB4_TankDriver5)
DO_NOWT
SET_CHAR_OBJECTIVE(ZB4_TankDriver5, FIRE_AT_OBJECT_FROM_VEHICLE, ZB4_Generator)
ENDIF
ENDIF
//Force the surviving RC cars to try and carbomb the transports when timer is 0.
IF((ZB4_Progress = 1) AND (ZB4_Timer = 0))
SET ZB4_BombReady = 1
CLEAR_TIMER(ZB4_Visual)
IF(NOT(IS_CAR_WRECKED(ZB4_FollowRC1)))
SET_CHAR_MAX_DRIVESPEED(ZB4_Driver1, 0.245)//Drive like the wind!
SET_CHAR_OBJECTIVE(ZB4_Driver1, KILL_CHAR_ANY_MEANS, ZB4_TransportDriver1)
SET_ARROW_COLOUR(ZB4_Arrow1, RED)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_FollowRC2)))
SET_CHAR_MAX_DRIVESPEED(ZB4_Driver2, 0.245)
SET_CHAR_OBJECTIVE(ZB4_Driver2, KILL_CHAR_ANY_MEANS, ZB4_TransportDriver2)
SET_ARROW_COLOUR(ZB4_Arrow2, RED)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_FollowRC3)))
SET_CHAR_MAX_DRIVESPEED(ZB4_Driver3, 0.245)
SET_CHAR_OBJECTIVE(ZB4_Driver3, KILL_CHAR_ANY_MEANS, ZB4_TransportDriver2)
SET_ARROW_COLOUR(ZB4_Arrow3, RED)
ENDIF
ENDIF
//-------------
IF((ZB4_Progress = 1) AND (ZB4_BombReady = 1))
IF(NOT(IS_CAR_WRECKED(ZB4_FollowRC1)))
IF((ZB4_Exploded1 = 0) AND (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_Driver1, ZB4_TransportDriver1, 2.0, 2.0)))
EXPLODE_LARGE (ZB4_Driver1)
EXPLODE_LARGE(ZB4_Transport1)
SET ZB4_Exploded1 = 1
ENDIF
ENDIF
//=====================
IF(NOT(IS_CAR_WRECKED(ZB4_FollowRC2)))
IF((ZB4_Exploded2 = 0) AND (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_Driver2, ZB4_TransportDriver2, 2.0, 2.0)))
EXPLODE_LARGE (ZB4_Driver2)
EXPLODE_LARGE(ZB4_Transport2)
SET ZB4_Exploded2 = 1
ENDIF
ENDIF
//=====================
IF(NOT(IS_CAR_WRECKED(ZB4_FollowRC3)))
IF((ZB4_Exploded3 = 0) AND (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_Driver3, ZB4_TransportDriver2, 2.0, 2.0)))
EXPLODE_LARGE (ZB4_Driver3)
EXPLODE_LARGE(ZB4_Transport2)
SET ZB4_Exploded3 = 1
ENDIF
ENDIF
ENDIF
//Make the RC Jeeps attack on sight.
IF(ZB4_RemoteControlling = 1)
IF((ZB4_Attack1 = 0) AND (ZB4_Progress = 0))
//IF(IS_ITEM_ACCURATELY_ONSCREEN(ZB4_Jeep1))
IF(LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_JeepDriver1, ZB4_PlayerCarTarget, 8.0, 8.0))
SET ZB4_Attack1 = 1
SET_CHAR_OBJECTIVE(ZB4_JeepDriver1, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
ENDIF
IF((ZB4_Attack2 = 0) AND (ZB4_Progress = 0))
IF(LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_JeepDriver2, ZB4_PlayerCarTarget, 8.0, 8.0))
SET ZB4_Attack2 = 1
SET_CHAR_OBJECTIVE(ZB4_JeepDriver2, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
ENDIF
IF((ZB4_Attack3 = 0) AND (ZB4_Progress = 0))
IF(LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_JeepDriver3, ZB4_PlayerCarTarget, 8.0, 8.0))
SET ZB4_Attack3 = 1
SET_CHAR_OBJECTIVE(ZB4_JeepDriver3, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
ENDIF
IF((ZB4_Attack4 = 0) AND (ZB4_Progress = 0))
IF(LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_JeepDriver4, ZB4_PlayerCarTarget, 8.0, 8.0))
SET ZB4_Attack4 = 1
SET_CHAR_OBJECTIVE(ZB4_JeepDriver4, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
ENDIF
ENDIF
IF(ZB4_Progress = 0)
IF((IS_CAR_WRECKED(ZB4_Tank1)) AND (IS_CAR_WRECKED(ZB4_Tank2)))
IF((IS_CAR_WRECKED(ZB4_Tank3)) AND (IS_CAR_WRECKED(ZB4_Tank4)))
IF(IS_CAR_WRECKED(ZB4_Tank5))
SET ZB4_Progress = 1
DISPLAY_TIMER (ZB4_Visual, 150)//150 seconds - AKA 2.5 minutes.
SET ZB4_Timer = 4500
REMOVE_ARROW(ZB4_Arrow1)
REMOVE_ARROW(ZB4_Arrow2)
REMOVE_ARROW(ZB4_Arrow3)
REMOVE_ARROW(ZB4_Arrow4)
REMOVE_ARROW(ZB4_Arrow5)
IF(ZB4_RemoteControlling = 1)
IF(NOT(IS_CAR_WRECKED(ZB4_Jeep1)))
SET_CHAR_OBJECTIVE(ZB4_JeepDriver1, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_Jeep2)))
SET_CHAR_OBJECTIVE(ZB4_JeepDriver2, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_Jeep3)))
SET_CHAR_OBJECTIVE(ZB4_JeepDriver3, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_Jeep4)))
SET_CHAR_OBJECTIVE(ZB4_JeepDriver4, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
ENDIF
//Create stuff for the next phase.
ZB4_Transport1 = CREATE_CAR (101.5, 84.5, 2.0) 2 180 BOXTRUCK END
ZB4_Transport2 = CREATE_CAR (222.5, 50.5, 2.0) 36 270 BANKVAN END
SET_CAR_ROCKETPROOF(ZB4_Transport1, ON)
SET_CAR_ROCKETPROOF(ZB4_Transport2, ON)
ZB4_FollowRC1 = CREATE_CAR (101.5, 86.5, 2.0) -1 180 GUNJEEP MINI_CAR END
ZB4_FollowRC2 = CREATE_CAR (224.5, 50.5, 2.0) -1 270 GUNJEEP MINI_CAR END
ZB4_FollowRC3 = CREATE_CAR (225.5, 50.5, 2.0) -1 270 GUNJEEP MINI_CAR END
ZB4_TransportDriver1 = CREATE_CHAR_INSIDE_CAR (ZB4_Transport1) 8 DRONE END
ZB4_TransportDriver2 = CREATE_CHAR_INSIDE_CAR (ZB4_Transport2) 8 DRONE END
ZB4_Driver1 = CREATE_CHAR_INSIDE_CAR (ZB4_FollowRC1) 4 PSYCHO END
ZB4_Driver2 = CREATE_CHAR_INSIDE_CAR (ZB4_FollowRC2) 4 PSYCHO END
ZB4_Driver3 = CREATE_CHAR_INSIDE_CAR (ZB4_FollowRC3) 4 PSYCHO END
SET_CHAR_TO_STAY_IN_CAR(ZB4_Driver1, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_Driver2, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_Driver3, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Driver1, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Driver2, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Driver3, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_Driver1, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_Driver2, ON)
SET_CHAR_DRIVE_AGGRESSION(ZB4_Driver3, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TransportDriver1, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_TransportDriver2, ON)
CHANGE_CAR_LOCK(ZB4_Transport1, LOCKED)
CHANGE_CAR_LOCK(ZB4_Transport2, LOCKED)
SET_CHAR_MAX_DRIVESPEED(ZB4_TransportDriver1, 0.11)
SET_CHAR_MAX_DRIVESPEED(ZB4_TransportDriver2, 0.12)
MAKE_CAR_DRIVE_AWAY(ZB4_Transport1)
MAKE_CAR_DRIVE_AWAY(ZB4_Transport2)
SET_CHAR_OBJECTIVE(ZB4_Driver1, FOLLOW_CAR_IN_CAR, ZB4_Transport1)
SET_CHAR_OBJECTIVE(ZB4_Driver2, FOLLOW_CAR_IN_CAR, ZB4_Transport2)
SET_CHAR_OBJECTIVE(ZB4_Driver3, FOLLOW_CAR_IN_CAR, ZB4_FollowRC2)
POINT_ARROW_AT(ZB4_Arrow1, ZB4_FollowRC1)
POINT_ARROW_AT(ZB4_Arrow2, ZB4_FollowRC2)
POINT_ARROW_AT(ZB4_Arrow3, ZB4_FollowRC3)
SET_ARROW_COLOUR(ZB4_Arrow1, YELLOW)
SET_ARROW_COLOUR(ZB4_Arrow2, YELLOW)
SET_ARROW_COLOUR(ZB4_Arrow3, YELLOW)
CLEAR_ALL_BRIEFS()
DISPLAY_BRIEF_NOW(1271)//Now blow up the RC cars following the transports before they blow up the transports.
ENDIF
ENDIF
ENDIF
ENDIF
//The only RC car this phase to attack you when close enough.
IF(ZB4_RemoteControlling = 1)
IF((ZB4_Attack6 = 0) AND (ZB4_Progress = 1))
//IF(IS_ITEM_ACCURATELY_ONSCREEN(ZB4_FollowRC3))
IF(LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_Driver3, ZB4_PlayerCarTarget, 6.0, 6.0))
SET ZB4_Attack6 = 1
SET_CHAR_OBJECTIVE(ZB4_Driver3, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
ENDIF
ENDIF
ENDIF
IF(ZB4_Progress = 1)
IF( (IS_CAR_WRECKED(ZB4_FollowRC1)) AND (IS_CAR_WRECKED(ZB4_FollowRC2)))
IF(IS_CAR_WRECKED(ZB4_FollowRC3))
SET ZB4_Progress = 2
CLEAR_TIMER(ZB4_Visual)
REMOVE_ARROW(ZB4_Arrow1)
REMOVE_ARROW(ZB4_Arrow2)
REMOVE_ARROW(ZB4_Arrow3)
//Create more stuff.
ZB4_Van = CREATE_CAR (141.5, 29.5, 1.0) 5 85 TVVAN END
SET_CAR_BULLETPROOF(ZB4_Van, ON)
SET_CAR_ROCKETPROOF(ZB4_Van, ON)
SET_CAR_FLAMEPROOF(ZB4_Van, ON)//AKA pretty much invincible to anything but Carbombs.
CHANGE_CAR_LOCK(ZB4_Van, LOCKOUT_PLAYER)
ZB4_CarBomb = CREATE_OBJ (145.5, 45.5, 2.0) 0 COLLECT_15 END
ZB4_GuardRC1 = CREATE_CAR (145.5, 32.1, 2.0) -1 60 GUNJEEP MINI_CAR END
ZB4_GuardRC2 = CREATE_CAR (147.1, 28.4, 2.0) -1 110 GUNJEEP MINI_CAR END
ZB4_GuardRC3 = CREATE_CAR (136.0, 31.2, 2.0) -1 355 GUNJEEP MINI_CAR END
ZB4_GuardRC4 = CREATE_CAR (140.5, 32.2, 2.0) -1 15 GUNJEEP MINI_CAR END
ZB4_Guard1 = CREATE_CHAR_INSIDE_CAR (ZB4_GuardRC1) 4 TANK_DRIVER END
ZB4_Guard2 = CREATE_CHAR_INSIDE_CAR (ZB4_GuardRC2) 4 TANK_DRIVER END
ZB4_Guard3 = CREATE_CHAR_INSIDE_CAR (ZB4_GuardRC3) 4 TANK_DRIVER END
ZB4_Guard4 = CREATE_CHAR_INSIDE_CAR (ZB4_GuardRC4) 4 TANK_DRIVER END
SET_CHAR_TO_STAY_IN_CAR(ZB4_Guard1, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_Guard2, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_Guard3, ON)
SET_CHAR_TO_STAY_IN_CAR(ZB4_Guard4, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Guard1, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Guard2, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Guard3, ON)
SET_CHAR_TO_USE_CAR_WEAPON(ZB4_Guard4, ON)
SET_CHAR_OBJECTIVE(ZB4_Guard1, WAIT_IN_CAR)
SET_CHAR_OBJECTIVE(ZB4_Guard2, WAIT_IN_CAR)
SET_CHAR_OBJECTIVE(ZB4_Guard3, WAIT_IN_CAR)
SET_CHAR_OBJECTIVE(ZB4_Guard4, WAIT_IN_CAR)
STOP_CHAR_DRIVING(ZB4_Guard1)
STOP_CHAR_DRIVING(ZB4_Guard2)
STOP_CHAR_DRIVING(ZB4_Guard3)
STOP_CHAR_DRIVING(ZB4_Guard4)
/*SET_CHAR_OBJECTIVE(ZB4_Guard1, FIRE_AT_OBJECT_FROM_VEHICLE, Player1)
SET_CHAR_OBJECTIVE(ZB4_Guard2, FIRE_AT_OBJECT_FROM_VEHICLE, Player1)
SET_CHAR_OBJECTIVE(ZB4_Guard3, FIRE_AT_OBJECT_FROM_VEHICLE, Player1)
SET_CHAR_OBJECTIVE(ZB4_Guard4, FIRE_AT_OBJECT_FROM_VEHICLE, Player1)*/
POINT_ARROW_AT(ZB4_Arrow1, ZB4_Van)
POINT_ARROW_AT(ZB4_Arrow2, ZB4_GuardRC1)
POINT_ARROW_AT(ZB4_Arrow3, ZB4_GuardRC2)
POINT_ARROW_AT(ZB4_Arrow4, ZB4_GuardRC3)
POINT_ARROW_AT(ZB4_Arrow5, ZB4_GuardRC4)
POINT_ARROW_AT(ZB4_Arrow6, 145.5, 45.5, 2.0)
SET_ARROW_COLOUR(ZB4_Arrow1, GREEN)
SET_ARROW_COLOUR(ZB4_Arrow2, YELLOW)
SET_ARROW_COLOUR(ZB4_Arrow3, YELLOW)
SET_ARROW_COLOUR(ZB4_Arrow4, YELLOW)
SET_ARROW_COLOUR(ZB4_Arrow5, YELLOW)
CLEAR_ALL_BRIEFS()
DISPLAY_BRIEF_NOW(1272)//Blow up the Van! Carefull about those guards.
ENDIF
ENDIF
ENDIF
IF((ZB4_BombTaken = 0) AND (ZB4_Progress = 2))
IF(LOCATE_CHARACTER_ANY_MEANS(ZB4_PlayerCarTarget, 145.5, 45.5, 2.0, 1.0, 1.0))
SET ZB4_BombTaken = 1
REMOVE_ARROW(ZB4_Arrow6)
ENDIF
ENDIF
//Trigger RC cars to retaliate under these circumstances.
IF(ZB4_RemoteControlling = 1)
IF((ZB4_Progress = 2) AND (ZB4_AttackFinal = 0))
IF((CHECK_CAR_DAMAGE_LEVEL(ZB4_GuardRC1, 15)) OR (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_PlayerCarTarget, ZB4_Guard1, 8.0, 8.0)))
SET ZB4_AttackFinal = 1
ENDIF
IF((CHECK_CAR_DAMAGE_LEVEL(ZB4_GuardRC2, 15)) OR (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_PlayerCarTarget, ZB4_Guard2, 8.0, 8.0)))
SET ZB4_AttackFinal = 1
ENDIF
IF((CHECK_CAR_DAMAGE_LEVEL(ZB4_GuardRC3, 15)) OR (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_PlayerCarTarget, ZB4_Guard3, 8.0, 8.0)))
SET ZB4_AttackFinal = 1
ENDIF
IF((CHECK_CAR_DAMAGE_LEVEL(ZB4_GuardRC4, 15)) OR (LOCATE_ANOTHER_CHARACTER_ANY_MEANS(ZB4_PlayerCarTarget, ZB4_Guard4, 8.0, 8.0)))
SET ZB4_AttackFinal = 1
ENDIF
ENDIF
ENDIF
//-------------
IF(ZB4_RemoteControlling = 1)
IF((ZB4_Progress = 2) AND (ZB4_AttackFinal = 1))
SET ZB4_AttackFinal = 2
DO_NOWT
IF(NOT(IS_CAR_WRECKED(ZB4_GuardRC1)))
SET_CHAR_OBJECTIVE(ZB4_Guard1, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
SET_ARROW_COLOUR(ZB4_Arrow2, RED)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_GuardRC2)))
SET_CHAR_OBJECTIVE(ZB4_Guard2, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
SET_ARROW_COLOUR(ZB4_Arrow3, RED)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_GuardRC3)))
SET_CHAR_OBJECTIVE(ZB4_Guard3, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
SET_ARROW_COLOUR(ZB4_Arrow4, RED)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_GuardRC4)))
SET_CHAR_OBJECTIVE(ZB4_Guard4, KILL_CHAR_ANY_MEANS, ZB4_PlayerCarTarget)
SET_ARROW_COLOUR(ZB4_Arrow5, RED)
ENDIF
ENDIF
ENDIF
IF((ZB4_Progress = 2) AND (ZB4_Exit = 0))
IF(IS_CAR_WRECKED(ZB4_Van))
SET ZB4_Passed = 1
CLEAR_WANTED_LEVEL(Player1)
ADD_SCORE(Player1, 13000)
CLEAR_ALL_BRIEFS()
DISPLAY_BRIEF_NOW(1273)//You won!
DISPLAY_MESSAGE(1124)//JOB COMPLETE!
//EXPLODE_LARGE (ZB4_PlayerCar)
REMOVE_ARROW(ZB4_Arrow1)
REMOVE_ARROW(ZB4_Arrow2)
REMOVE_ARROW(ZB4_Arrow3)
REMOVE_ARROW(ZB4_Arrow4)
REMOVE_ARROW(ZB4_Arrow5)
IF(ZB4_BombTaken = 0)
REMOVE_ARROW(ZB4_Arrow6)
ENDIF
IF(NOT(IS_CAR_WRECKED(ZB4_PlayerCar)))
//GIVE_WEAPON(ZB4_PlayerCar, CAR_BOMB)
EXPLODE_LARGE(ZB4_PlayerCar)
ENDIF
//RETURN
SET ZB4_Exit = 1
IF(ZB4_RemoteControlling = 1)
SET ZB4_ExitTimer = 120//4 Seconds.
ENDIF
ENDIF
ENDIF
IF(ZB4_BombWait = 0)//Enable the Carbomb-checking delay.
IF(IS_CARBOMB_ACTIVE(ZB4_PlayerCar))
SET ZB4_BombWait = 1
SET ZB4_BombTimer = 210 //Roughly 7 seconds.
ENDIF
ENDIF
//Special mission exit. - I guess the RC Car Controlling is being buggy somehow...
IF((ZB4_Exit = 1) AND (ZB4_ExitTimer = 0))
DELETE_ITEM(ZB4_PlayerCar)
DO_NOWT
IF(ZB4_RemoteControlling = 1)
DELETE_ITEM(ZB4_PlayerCarTarget)
ENDIF
DO_NOWT
RETURN
ENDIF
IF(Global_OnMission = 0)
DO_NOWT//Failsafe against getting stuck in a mission loop.
RETURN
ENDIF
//Fail States!
IF(ZB4_Exit = 0)
IF(ZB4_BombTimer = 0)//Only trigger if no Carbombs have been recently used.
IF(IS_CAR_WRECKED(ZB4_PlayerCar))
CLEAR_ALL_BRIEFS()
DISPLAY_BRIEF_NOW(1274)//You need that RC car!
DISPLAY_MESSAGE(1125)//JOB FAILED!
SET ZB4_Failed = 1
//RETURN
SET ZB4_Exit = 1
SET ZB4_ExitTimer = 45//1.5 Seconds.
ENDIF
ENDIF
ENDIF
IF(ZB4_Exit = 0)
IF(CHECK_OBJ_MODEL(ZB4_Generator, POWERGEN_DEAD))
CLEAR_ALL_BRIEFS()
DISPLAY_BRIEF_NOW(1275)//You've let them blow up the generator!
DISPLAY_MESSAGE(1125)//JOB FAILED!
SET ZB4_Failed = 1
IF(NOT(IS_CAR_WRECKED(ZB4_PlayerCar)))
EXPLODE_LARGE(ZB4_PlayerCar)//ZB4_PlayerCarTarget
//GIVE_WEAPON(ZB4_PlayerCar, CAR_BOMB)
ENDIF
//RETURN
SET ZB4_Exit = 1
IF(ZB4_RemoteControlling = 1)
SET ZB4_ExitTimer = 210//7 Seconds.
ENDIF
ENDIF
ENDIF
IF((ZB4_Progress = 1) AND (ZB4_Exit = 0))
IF((IS_CAR_WRECKED(ZB4_Transport1)) OR (IS_CAR_WRECKED(ZB4_Transport2)))
CLEAR_ALL_BRIEFS()
DISPLAY_BRIEF_NOW(1276)//You've let them blow up the transport!
DISPLAY_MESSAGE(1125)//JOB FAILED!
SET ZB4_Failed = 1
IF(NOT(IS_CAR_WRECKED(ZB4_PlayerCar)))
EXPLODE_LARGE(ZB4_PlayerCar)
//GIVE_WEAPON(ZB4_PlayerCar, CAR_BOMB)
ENDIF
//RETURN
SET ZB4_Exit = 1
IF(ZB4_RemoteControlling = 1)
SET ZB4_ExitTimer = 210//7 Seconds.
ENDIF
ENDIF
ENDIF
IF(ZB4_Exit = 0)
IF(HAS_CHAR_BEEN_ARRESTED(Player1))
DISPLAY_MESSAGE (1125)//JOB FAILED!
SET ZB4_Failed = 1
IF(NOT(IS_CAR_WRECKED(ZB4_PlayerCar)))
EXPLODE_LARGE(ZB4_PlayerCar)
//GIVE_WEAPON(ZB4_PlayerCar, CAR_BOMB)
ENDIF
//RETURN
SET ZB4_Exit = 1
IF(ZB4_RemoteControlling = 1)
SET ZB4_ExitTimer = 210//7 Seconds.
ENDIF
ENDIF
ENDIF
IF(ZB4_Exit = 0)
IF(HAS_CHARACTER_DIED(Player1))
DISPLAY_MESSAGE (1125)//JOB FAILED!
SET ZB4_Failed = 1
IF(NOT(IS_CAR_WRECKED(ZB4_PlayerCar)))
EXPLODE_LARGE(ZB4_PlayerCar)
//GIVE_WEAPON(ZB4_PlayerCar, CAR_BOMB)
ENDIF
//RETURN
SET ZB4_Exit = 1
IF(ZB4_RemoteControlling = 1)
SET ZB4_ExitTimer = 210//7 Seconds.
ENDIF
ENDIF
ENDIF
ENDWHILE
RETURN
//-----------------------------------CLEAN UP--------------------------------------
ZB4_Cleanup:
IF(ZB4_Passed = 1)
IF(Mission_ZB4Status = 0)
++Global_MissionsPassed
ENDIF
SET Mission_ZB4Status = 1//Important for repeatable missions.
ENABLE_THREAD_TRIGGER(ZB4SubThread)
SET Global_OnMission = 0
SET MissionLoop = 0
ANSWER_PHONE (Player1, Global_ZaibatsuPhone4, -1)
ENDIF
IF(ZB4_Failed = 1)
ENABLE_THREAD_TRIGGER(ZB4SubThread)
SET Global_OnMission = 0
SET MissionLoop = 0
ANSWER_PHONE (Player1, Global_ZaibatsuPhone4, -1)
ENDIF
SET Global_OnMission = 0
SET Global_MissionFinished = 1
SET MissionLoop = 0
SET ZB4_Passed = 0
SET ZB4_Failed = 0
IF(ZB4_Progress = 1)//Clear timer if its still going.
IF(NOT(ZB4_Timer = 0))
CLEAR_TIMER(ZB4_Visual)
ENDIF
ENDIF
REMOVE_ARROW(ZB4_Arrow1)
REMOVE_ARROW(ZB4_Arrow2)
REMOVE_ARROW(ZB4_Arrow3)
REMOVE_ARROW(ZB4_Arrow4)
REMOVE_ARROW(ZB4_Arrow5)
REMOVE_ARROW(ZB4_Arrow6)
IF((ZB4_Progress = 2) AND (ZB4_BombTaken = 0))
DELETE_ITEM(ZB4_CarBomb)
ENDIF
IF(ZB4_RemoteControlling = 0)//Only delete it if it hasnt been taken yet.
DELETE_ITEM(ZB4_RCToken)
ENDIF
SET ZB4_Attack1 = 0
SET ZB4_Attack2 = 0
SET ZB4_Attack3 = 0
SET ZB4_Attack4 = 0
SET ZB4_Attack5 = 0
SET ZB4_Attack6 = 0
SET ZB4_TankAttack1 = 0
SET ZB4_TankAttack2 = 0
SET ZB4_TankAttack3 = 0
SET ZB4_TankAttack4 = 0
SET ZB4_TankAttack5 = 0
SET ZB4_AttackFinal = 0
SET ZB4_Timer = 0
SET ZB4_BombReady = 0
SET ZB4_Exploded1 = 0
SET ZB4_Exploded2 = 0
SET ZB4_Exploded3 = 0
SET ZB4_Progress = 0
SET ZB4_RemoteControlling = 0
SET ZB4_BombTaken = 0
SET ZB4_BombTimer = 0
SET ZB4_BombWait = 0
SET ZB4_Exit = 0
SET ZB4_ExitTimer = 0
EXPLODE_SMALL(Player1)//Testing only!
MISSION_HAS_FINISHED()
RETURN
MISSIONSTART
GOSUB ZB4_Main:
GOSUB ZB4_Cleanup:
MISSIONEND[/mis]