triggered event


(mrfin) #1

Hello mapping types

Can someone please point me in the right direction for making a triggered event occur.

Description…there are 2 vehicles in this map, plan is to have the second vehicle activated and ready to be fixed only when the first vehicle has reached a certain point along its route?

Simmilar to goldrush where the truck is activated once the gold has been put on it.

Thanks for help - much appreciated.

:cool:


(Oxygen - o2) #2

please post ur script file


(mrfin) #3

ok small soldier …you can find the script here: http://www.ddtp.vispa.com/work/train.htm
btw…this isn’t part of my work!!..it’s much more fun, rewarding and more difficult!!


(Oxygen - o2) #4

you could just post it :confused:

game_manager
{
	spawn
	{
		
		// Game rules
		wm_axis_respawntime	10
		wm_allied_respawntime	10
		wm_number_of_objectives 7
		wm_set_round_timelimit	30

		// Objectives
		// 1: Steal Truck
		// 2: Protect Truck
		// 3: Steal Train
		// 4: Protect Train
		// 5: Escape with gold
		// 6: Allied command post
		// 7: Axis command post

		// Current main objectives for each team (0=Axis, 1=Allies)

		
		wm_objective_status 1 1 0
		wm_objective_status 1 0 0
		wm_objective_status 2 1 0
		wm_objective_status 2 0 0
		wm_objective_status 3 1 0
		wm_objective_status 3 0 0
		wm_objective_status 4 1 0
		wm_objective_status 4 0 0
		wm_objective_status 5 1 0
		wm_objective_status 5 0 0
		wm_objective_status 6 0 0
		wm_objective_status 6 1 0
		wm_objective_status 7 0 0
		wm_objective_status 7 1 0

		wm_set_main_objective		1	1
		wm_set_main_objective		1	0
		

		// Stopwatch mode defending team (0=Axis, 1=Allies)
		wm_set_defending_team	1

		// Winner on expiration of round timer (0=Axis, 1=Allies)
		wm_setwinner	1
		
		wait 500
		setautospawn 	"sawmill"		1
		setautospawn 	"boathouse"		0


		accum 4 set 1 // have the Axis stolen the truck?
	}

	trigger axis_win
	{
		wm_setwinner	0
		wm_announce "Axis team escaped with the Gold!"

		wm_objective_status 5 0 0
		wm_objective_status 5 1 0

		wait 1500
		wm_endround
	}

	trigger axis_steal_truck
	{
		accum 4 abort_if_not_equal 1

		wm_announce "Axis team has stolen the Truck!"

		wm_objective_status 1 0 1
		wm_objective_status 1 1 2

		alertentity sawmill_axis_spawns
		alertentity sawmill_allied_spawns
		alertentity sawmill
		alertentity boathouse_axis_spawns
		alertentity boathouse_allied_spawns
		alertentity boathouse
				 	
		setautospawn 	"sawmill"		0
		setautospawn 	"boathouse"		1

		accum 4 set 0
		wm_set_main_objective		2	1
		wm_set_main_objective		2	0

		}

	trigger axis_steal_train
	{
		accum 4 abort_if_not_equal 1

		wm_announce "Axis team has stolen the Train!"

		wm_objective_status 3 0 1
		wm_objective_status 3 1 2

		alertentity sawmill_axis_spawns
		alertentity sawmill_allied_spawns
		alertentity sawmill
		alertentity boathouse_axis_spawns
		alertentity boathouse_allied_spawns
		alertentity boathouse
				 	
		setautospawn 	"sawmill"		0
		setautospawn 	"boathouse"		1

		accum 4 set 0
		wm_set_main_objective		3	0
		wm_set_main_objective		3	1

		}

}

// **********************************************
// ****************** TRUCK STUFF ***************
// **********************************************

truck_smoke
{
	spawn
	{
		wait 300
		attachtotag truck tag_wfront
		setstate truck_smoke invisible
	}
}

// sound "thread"
truck_engine
{
	spawn
	{
		wait 200
		attachtotag truck tag_wfront

		trigger truck_engine sound_idle
	}

	trigger start
	{
		trigger truck_engine sound_start
		wait 950
		trigger truck_engine sound_move
	}

	trigger stop
	{
		trigger truck_engine sound_stop
		wait 950
		trigger truck_engine sound_idle
	}

	// ========================================
	// sound events
	trigger sound_idle
	{
		playsound sound/vehicles/truck/truck_idle.wav looping
	}

	trigger sound_start
	{
		stopsound
		playsound sound/vehicles/truck/truck_revup.wav volume 96
	}

	trigger sound_move
	{
		playsound sound/vehicles/truck/truck_move.wav looping
	}

	trigger sound_stop
	{
		stopsound
		playsound sound/vehicles/truck/truck_revdown.wav volume 96
	}

	trigger sound_death
	{
		stopsound
		playsound sound/vehicles/truck/truck_stop.wav volume 96
	}

	// ========================================
	// ========================================
}

truck_build
{
	spawn
	{
		wait 500

		attachtotag truck tag_wback
	}
}

truck_construct
{
	spawn
	{
		constructible_class 2
		constructible_health 1050
		constructible_constructxpbonus 10
		constructible_destructxpbonus 10
	}

	built final
	{
		alertentity truck
		trigger truck wheels_forward 
		trigger truck_engine start
		wm_announce "The Truck has been repaired!"
	}

	   	 trigger final_pos
    	{
        	constructible_constructxpbonus 3
        	constructible_destructxpbonus 3
    	}
}

// digibob: ok, for once i'm gonna PLAN this one, so NOTHING WILL BREAK EVAR
// ============================================================================
// accum 0, gold bars collected
// accum 1
//  - bit 0: barrier 1 status 	( 0 = destroyed, 	1 = built 		)
//  - bit 1: barrier 2 status 	( 0 = destroyed, 	1 = built 		)
//  - bit 2: spline status 		( 0 = not moving, 	1 = moving 		)
//  - bit 3: stuck check flag 	( 0 = not stuck, 	1 = stuck 		)
//  - bit 4: script lockout 	( 0 = no lockout, 	1 = lockout		)
//  - bit 5: blank 				( 									)
//  - bit 6: temp register 		(XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
//  - bit 7: death status 		( 0 = alive, 		1 = dead		)
//  - bit 8: player check 		( 0 = players, 		1 = no players	)
//  - bit 9: visible state		( 0 = alive, 		1 = dead		)
// accum 2, blank
// accum 3, current movement loop position
// accum 4, stop counter
// accum 5, blank
// accum 6, blank
// accum 7, blank
// ============================================================================
// spline points are tspln_X with X = 1 to 23
// ============================================================================
// wheel events:
//  - wheels_forward
//  - wheels_backward
//  - wheels_stop

truck
{
	spawn
	{
		faceangles 0 90 0 50
	}

	// ========================================
	
	trigger wheels_forward
	{
		trigger truck_bwheel2 forward
		trigger truck_fwheel forward
	}

	trigger wheels_backward
	{
		trigger truck_bwheel2 backward
		trigger truck_fwheel backward
	}

	trigger wheels_stop
	{
		trigger truck_bwheel2 stop
		trigger truck_fwheel stop
	}

	// ========================================
	// ========================================

	// ========================================
	// movement

	trigger move_check
	{
		trigger truck stuck_check
		accum 1 abort_if_bitset 3

		trigger truck dispatch
	}

	trigger move
	{
		trigger truck move_check

		trigger truck move
	}

	// ========================================
	// ========================================


	trigger run_continue
	{
		trigger truck deathcheck
		trigger truck stopcheck
		trigger truck move
	}

	trigger run_1
	{
		accum 1 bitset 2
		followspline 0 tspln_1 100 wait length 304 wait roll 0 2 dampin
		accum 1 bitreset 2

		accum 3 set 1

		trigger truck run_continue
	}

	trigger run_2
	{
		accum 1 bitset 2
		followspline 0 tspln_2 125 wait length 304 wait roll 2 -1 dampout
		accum 1 bitreset 2

		accum 3 set 2
		trigger truck run_continue
	}

	trigger run_3
	{
		accum 1 bitset 2
		followspline 0 tspln_3 125 wait length 304 wait roll 1 -1 dampout
		accum 1 bitreset 2

		accum 3 set 3

		trigger truck run_continue
	}

	trigger run_4
	{
		accum 1 bitset 2
		followspline 0 tspln_4 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 4
		trigger truck run_continue
	}

	trigger run_5
	{
		
		accum 1 bitset 2
		followspline 0 tspln_5 125 wait length 304 wait roll 2 -1 dampin
		accum 1 bitreset 2

		accum 3 set 5
		trigger truck run_continue
	}

	trigger run_6
	{
		accum 1 bitset 2
		followspline 0 tspln_6 125 wait length 304 wait roll 2 -2 dampout 
		accum 1 bitreset 2

		accum 3 set 6
		trigger truck run_continue
	}

	trigger run_7
	{
		accum 1 bitset 2
		followspline 0 tspln_7 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 7
		trigger truck run_continue
	}

	trigger run_8
	{
		accum 1 bitset 2
		followspline 0 tspln_8 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 8
		trigger truck run_continue
	}

	trigger run_9
	{
		accum 1 bitset 2
		followspline 0 tspln_9 125 wait length 304 wait roll 3 -2 dampin
		accum 1 bitreset 2

		accum 3 set 9
		trigger truck run_continue
	}

	trigger run_10
	{
		accum 1 bitset 2
		followspline 0 tspln_10 125 wait length 304 wait roll 1 0 dampout
		accum 1 bitreset 2

		accum 3 set 10
		trigger truck run_continue 
	}

	trigger run_11
	{
		accum 1 bitset 2
		followspline 0 tspln_11 125 wait length 304 wait roll -2 0
		accum 1 bitreset 2

		accum 3 set 11
		trigger truck run_continue
	}

	trigger run_12
	{
		accum 1 bitset 2
		followspline 0 tspln_12 125 wait length 304 wait roll -2 -1 dampin
		accum 1 bitreset 2

		accum 3 set 12
		trigger truck run_continue
	}

	trigger run_13
	{
		accum 1 bitset 2
		followspline 0 tspln_13 125 wait length 304 wait roll -1 0 dampout
		accum 1 bitreset 2

		accum 3 set 13
		trigger truck run_continue
	}

	trigger run_14
	{
		accum 1 bitset 2
		followspline 0 tspln_14 125 wait length 304 wait roll 1 +2 dampin
		accum 1 bitreset 2

		accum 3 set 14
		trigger truck run_continue
	}

	trigger run_15
	{
		accum 1 bitset 2
		followspline 0 tspln_15 125 wait length 304 wait roll 3 +1 dampin 
		accum 1 bitreset 2

		accum 3 set 15
		trigger truck run_continue
	}

	trigger run_16
	{
		accum 1 bitset 2
		followspline 0 tspln_16 125 wait length 304 wait roll 1 +2 dampout 
		accum 1 bitreset 2

		accum 3 set 16
		trigger truck run_continue
	}

	trigger run_17
	{
		accum 1 bitset 2
		followspline 0 tspln_17 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 17

		trigger truck run_continue
	}

	trigger run_18
	{
		accum 1 bitset 2
		followspline 0 tspln_18 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 18
		trigger truck run_continue
	}

	trigger run_19
	{
		
		accum 1 bitset 2
		followspline 0 tspln_19 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 19
		trigger truck run_continue
	}

	trigger run_20
	{
		accum 1 bitset 2
		followspline 0 tspln_20 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 20
		trigger truck run_continue
	}

	trigger run_21
	{
		accum 1 bitset 2
		followspline 0 tspln_21 125 wait length 304 wait roll 2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 21
		trigger truck run_continue
	}

	trigger run_22
	{
		accum 1 bitset 2
		followspline 0 tspln_22 125 wait length 304 wait roll 1 -1 dampout 
		accum 1 bitreset 2

		accum 3 set 22
		trigger truck run_continue
	}

	trigger run_23
	{
		accum 1 bitset 2
		followspline 0 tspln_23 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 23
		trigger truck run_continue
	}

	trigger run_24
	{
		accum 1 bitset 2
		followspline 0 tspln_24 125 wait length 304
		accum 1 bitreset 2
		
		accum 3 set 24
		trigger truck run_continue 

	}

	trigger run_25
	{
		accum 1 bitset 2
		followspline 0 tspln_25 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 25
		trigger truck run_continue 
	}
	trigger run_26
	{
		accum 1 bitset 2
		followspline 0 tspln_26 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 26
		trigger truck run_continue 
	}
	trigger run_27
	{
		accum 1 bitset 2
		followspline 0 tspln_27 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 27
		trigger truck run_continue 

	}
	trigger run_28
	{
		accum 1 bitset 2
		followspline 0 tspln_28 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 28
		trigger truck run_continue 

	}
	trigger run_29
	{
		accum 1 bitset 2
		followspline 0 tspln_29 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 29
		trigger truck run_continue 

	}
	trigger run_30
	{
		accum 1 bitset 2
		followspline 0 tspln_30 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 30
		trigger truck run_continue 

	}
	trigger run_31
	{
		accum 1 bitset 2
		followspline 0 tspln_31 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 31
		trigger truck run_continue 

	}
	trigger run_32
	{
		accum 1 bitset 2
		followspline 0 tspln_32 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 32
		trigger truck run_continue 

	}
	trigger run_33
	{
		accum 1 bitset 2
		followspline 0 tspln_33 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 33
		trigger truck run_continue 

	}
	trigger run_34
	{
		accum 1 bitset 2
		followspline 0 tspln_34 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 34
		trigger truck run_continue 

	}
	trigger run_35
	{
		accum 1 bitset 2
		followspline 0 tspln_35 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 35
		trigger truck run_continue 

	}
	trigger run_36
	{
		accum 1 bitset 2
		followspline 0 tspln_36 125 wait length 304 wait roll -3 -2 dampin 
		accum 1 bitreset 2

		accum 3 set 36
		trigger truck run_continue 

	}
	trigger run_37
	{
		accum 1 bitset 2
		followspline 0 tspln_37 125 wait length 304 wait roll -1 0 dampin 
		accum 1 bitreset 2

		accum 3 set 37
		trigger truck run_continue 

	}
	trigger run_38
	{
		accum 1 bitset 2
		followspline 0 tspln_38 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 38
		trigger truck run_continue 

	}
	trigger run_39
	{
		accum 1 bitset 2
		followspline 0 tspln_39 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 39
		trigger truck run_continue 

	}
	trigger run_40
	{
		accum 1 bitset 2
		followspline 0 tspln_40 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 40
		trigger truck run_continue 

	}
	trigger run_41
	{
		accum 1 bitset 2
		followspline 0 tspln_41 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 41
		trigger truck run_continue 

	}
	trigger run_42
	{
		accum 1 bitset 2
		followspline 0 tspln_42 125 wait length 304 wait roll 2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 42
		trigger truck run_continue 

	}
	trigger run_43
	{
		accum 1 bitset 2
		followspline 0 tspln_43 125 wait length 304 wait roll 1 0 dampin 
		accum 1 bitreset 2

		accum 3 set 43
		trigger truck run_continue 

	}
	trigger run_44
	{
		accum 1 bitset 2
		followspline 0 tspln_44 125 wait length 304 wait roll -2 +1 dampin 
		accum 1 bitreset 2

		accum 3 set 44
		trigger truck run_continue 

	}
	trigger run_45
	{
		accum 1 bitset 2
		followspline 0 tspln_45 125 wait length 304 wait roll -1 0 dampin 
		accum 1 bitreset 2

		accum 3 set 45
		trigger truck run_continue 

	}
	trigger run_46
	{
		accum 1 bitset 2
		followspline 0 tspln_46 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 46
		trigger truck run_continue 

	}
	trigger run_47
	{
		accum 1 bitset 2
		followspline 0 tspln_47 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 47
		trigger truck run_continue 

	}
	trigger run_48
	{
		accum 1 bitset 2
		followspline 0 tspln_48 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 48
		trigger truck run_continue 

	}
	trigger run_49
	{
		accum 1 bitset 2
		followspline 0 tspln_49 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 49
		trigger truck run_continue 

	}
	trigger run_50
	{
		accum 1 bitset 2
		followspline 0 tspln_50 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 50
		trigger truck run_continue 

	}
	trigger run_51
	{
		accum 1 bitset 2
		followspline 0 tspln_51 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 51
		trigger truck run_continue 

	}
	trigger run_52
	{
		accum 1 bitset 2
		followspline 0 tspln_52 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 52
		trigger truck run_continue 

	}
	trigger run_53
	{
		accum 1 bitset 2
		followspline 0 tspln_53 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 53
		trigger truck run_continue 

	}
	trigger run_54
	{
		accum 1 bitset 2
		followspline 0 tspln_54 125 wait length 304 wait roll 3 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 54
		trigger truck run_continue 

	}
	trigger run_55
	{
		accum 1 bitset 2
		followspline 0 tspln_55 125 wait length 304 wait roll 2 +1 dampout 
		accum 1 bitreset 2

		accum 3 set 55
		trigger truck run_continue 

	}
	trigger run_56
	{
		accum 1 bitset 2
		followspline 0 tspln_56 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 56
		trigger truck run_continue 

	}
	trigger run_57
	{
		accum 1 bitset 2
		followspline 0 tspln_57 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 57
		trigger truck run_continue 

	}
	trigger run_58
	{
		accum 1 bitset 2
		followspline 0 tspln_58 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 58
		trigger truck run_continue 

	}
	trigger run_59
	{
		accum 1 bitset 2
		followspline 0 tspln_59 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 59
		trigger truck run_continue 

	}
	trigger run_60
	{
		accum 1 bitset 2
		followspline 0 tspln_60 125 wait length 304 wait roll 2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 60
		trigger truck run_continue 

	}
	trigger run_61
	{
		accum 1 bitset 2
		followspline 0 tspln_61 125 wait length 304 wait roll 0 0 dampout 
		accum 1 bitreset 2

		accum 3 set 61
		trigger truck run_continue 

	}
	trigger run_62
	{
		accum 1 bitset 2
		followspline 0 tspln_62 125 wait length 304 wait roll 2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 62
		trigger truck run_continue 

	}
	trigger run_63
	{
		accum 1 bitset 2
		followspline 0 tspln_63 125 wait length 304 wait roll 0 0 dampout 
		accum 1 bitreset 2

		accum 3 set 63
		trigger truck run_continue 

	}
	trigger run_64
	{
		accum 1 bitset 2
		followspline 0 tspln_64 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 64
		trigger truck run_continue 

	}
	trigger run_65
	{
		accum 1 bitset 2
		followspline 0 tspln_65 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 65
		trigger truck run_continue 

	}
	trigger run_66
	{
		accum 1 bitset 2
		followspline 0 tspln_66 125 wait length 304 wait roll -2 1 dampin 
		accum 1 bitreset 2

		accum 3 set 66
		trigger truck run_continue 

	}
	trigger run_67
	{
		accum 1 bitset 2
		followspline 0 tspln_67 125 wait length 304 wait roll -3 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 67
		trigger truck run_continue 

	}
	trigger run_68
	{
		accum 1 bitset 2
		followspline 0 tspln_68 125 wait length 304 wait roll -2 +1 dampin 
		accum 1 bitreset 2

		accum 3 set 68
		trigger truck run_continue 

	}
	trigger run_69
	{
		accum 1 bitset 2
		followspline 0 tspln_69 125 wait length 304 wait roll -2 0 dampin 
		accum 1 bitreset 2

		accum 3 set 69
		trigger truck run_continue 

	}
	trigger run_70
	{
		accum 1 bitset 2
		followspline 0 tspln_70 125 wait length 304 wait roll -1 +2 dampout 
		accum 1 bitreset 2

		accum 3 set 70
		trigger truck run_continue 

	}
	trigger run_71
	{
		accum 1 bitset 2
		followspline 0 tspln_71 125 wait length 304 wait roll 4 +1
		accum 1 bitreset 2

		accum 3 set 71
		trigger truck run_continue 

	}
	trigger run_72
	{
		accum 1 bitset 2
		followspline 0 tspln_72 125 wait length 304 wait roll -2 0  
		accum 1 bitreset 2

		accum 3 set 72
		trigger truck run_continue 

	}
	trigger run_73
	{
		accum 1 bitset 2
		followspline 0 tspln_73 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 73
		trigger truck run_continue 

	}
	trigger run_74
	{
		accum 1 bitset 2
		followspline 0 tspln_74 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 74
		trigger truck run_continue 

	}
	trigger run_75
	{
		accum 1 bitset 2
		followspline 0 tspln_75 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 75
		trigger truck run_continue 

	}
	trigger run_76
	{
		accum 1 bitset 2
		followspline 0 tspln_76 125 wait length 304 wait roll -2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 76
		trigger truck run_continue 

	}
	trigger run_77
	{
		accum 1 bitset 2
		followspline 0 tspln_77 125 wait length 304 wait roll 2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 77
		trigger truck run_continue 

	}
	trigger run_78
	{
		accum 1 bitset 2
		followspline 0 tspln_78 125 wait length 304 wait roll 1 +2 dampout 
		accum 1 bitreset 2

		accum 3 set 78
		trigger truck run_continue 

	}
	trigger run_79
	{
		accum 1 bitset 2
		followspline 0 tspln_79 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 79
		trigger truck run_continue 

	}
	trigger run_80
	{
		accum 1 bitset 2
		followspline 0 tspln_80 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 80
		trigger truck run_continue 

	}
	trigger run_81
	{
		accum 1 bitset 2
		followspline 0 tspln_81 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 81
		trigger truck run_continue 

	}
	trigger run_82
	{
		accum 1 bitset 2
		followspline 0 tspln_82 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 82
		trigger truck run_continue 

	}
	trigger run_83
	{
		accum 1 bitset 2
		followspline 0 tspln_83 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 83
		trigger truck run_continue 

	}
	trigger run_84
	{
		accum 1 bitset 2
		followspline 0 tspln_84 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 84
		trigger truck run_continue 

	}
	trigger run_85
	{
		accum 1 bitset 2
		followspline 0 tspln_85 125 wait length 304 wait roll 2 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 85
		trigger truck run_continue 

	}
	trigger run_86
	{
		accum 1 bitset 2
		followspline 0 tspln_86 125 wait length 304 wait roll 1 -1 dampin 
		accum 1 bitreset 2

		accum 3 set 86
		trigger truck run_continue 

	}
	trigger run_87
	{
		accum 1 bitset 2
		followspline 0 tspln_87 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 87
		trigger truck run_continue 

	}
	trigger run_88
	{
		accum 1 bitset 2
		followspline 0 tspln_88 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 88
		trigger truck run_continue 

	}
	trigger run_89
	{
		accum 1 bitset 2
		followspline 0 tspln_89 125 wait length 304 wait roll 1 +2 dampin 
		accum 1 bitreset 2

		accum 3 set 89
		trigger truck run_continue 

	}
	trigger run_90
	{
		accum 1 bitset 2
		followspline 0 tspln_90 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 90
		trigger truck run_continue 

	}
	trigger run_91
	{
		accum 1 bitset 2
		followspline 0 tspln_91 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 91
		trigger truck run_continue 

	}
	trigger run_92
	{
		accum 1 bitset 2
		followspline 0 tspln_92 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 92
		trigger truck run_continue 

	}
	trigger run_93
	{
		accum 1 bitset 2
		followspline 0 tspln_93 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 93
		trigger truck run_continue 

	}
	trigger run_94
	{
		accum 1 bitset 2
		followspline 0 tspln_94 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 94
		trigger truck run_continue 

	}
	trigger run_95
	{
		accum 1 bitset 2
		followspline 0 tspln_95 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 95
		trigger truck run_continue 

	}
	trigger run_96
	{
		accum 1 bitset 2
		followspline 0 tspln_96 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 96
		trigger truck run_continue 

	}
	trigger run_97
	{
		accum 1 bitset 2
		followspline 0 tspln_97 125 wait length 304
		accum 1 bitreset 2
		accum 3 set 97
		trigger truck run_continue
		
			
		
	}

	trigger run_98
	{
		accum 1 bitset 2
		accum 1 bitreset 2
		accum 3 set 98
		
		trigger truck wheels_stop 
		

		
	}
	

	trigger dispatch
	{
		accum 3 trigger_if_equal 0 	truck run_1
		accum 3 trigger_if_equal 1 	truck run_2
		accum 3 trigger_if_equal 2	truck run_3
		accum 3 trigger_if_equal 3 	truck run_4
		accum 3 trigger_if_equal 4 	truck run_5
		accum 3 trigger_if_equal 5 	truck run_6
		accum 3 trigger_if_equal 6 	truck run_7
		accum 3 trigger_if_equal 7 	truck run_8
		accum 3 trigger_if_equal 8 	truck run_9
		accum 3 trigger_if_equal 9 	truck run_10
		accum 3 trigger_if_equal 10	truck run_11
		accum 3 trigger_if_equal 11	truck run_12
		accum 3 trigger_if_equal 12	truck run_13
		accum 3 trigger_if_equal 13	truck run_14
		accum 3 trigger_if_equal 14	truck run_15
		accum 3 trigger_if_equal 15	truck run_16
		accum 3 trigger_if_equal 16	truck run_17
		accum 3 trigger_if_equal 17	truck run_18
		accum 3 trigger_if_equal 18	truck run_19
		accum 3 trigger_if_equal 19	truck run_20
		accum 3 trigger_if_equal 20	truck run_21
		accum 3 trigger_if_equal 21	truck run_22
		accum 3 trigger_if_equal 22	truck run_23
		accum 3 trigger_if_equal 23	truck run_24
		accum 3 trigger_if_equal 24	truck run_25
		accum 3 trigger_if_equal 25	truck run_26
		accum 3 trigger_if_equal 26	truck run_27
		accum 3 trigger_if_equal 27	truck run_28
		accum 3 trigger_if_equal 28	truck run_29
		accum 3 trigger_if_equal 29	truck run_30
		accum 3 trigger_if_equal 30	truck run_31
		accum 3 trigger_if_equal 31	truck run_32
		accum 3 trigger_if_equal 32	truck run_33
		accum 3 trigger_if_equal 33	truck run_34
		accum 3 trigger_if_equal 34	truck run_35
		accum 3 trigger_if_equal 35	truck run_36
		accum 3 trigger_if_equal 36	truck run_37
		accum 3 trigger_if_equal 37	truck run_38
		accum 3 trigger_if_equal 38	truck run_39
		accum 3 trigger_if_equal 39	truck run_40
		accum 3 trigger_if_equal 40	truck run_41
		accum 3 trigger_if_equal 41	truck run_42
		accum 3 trigger_if_equal 42	truck run_43
		accum 3 trigger_if_equal 43	truck run_44
		accum 3 trigger_if_equal 44	truck run_45
		accum 3 trigger_if_equal 45	truck run_46
		accum 3 trigger_if_equal 46	truck run_47
		accum 3 trigger_if_equal 47	truck run_48
		accum 3 trigger_if_equal 48	truck run_49
		accum 3 trigger_if_equal 49	truck run_50
		accum 3 trigger_if_equal 50	truck run_51
		accum 3 trigger_if_equal 51	truck run_52
		accum 3 trigger_if_equal 52	truck run_53
		accum 3 trigger_if_equal 53	truck run_54
		accum 3 trigger_if_equal 54	truck run_55
		accum 3 trigger_if_equal 55	truck run_56
		accum 3 trigger_if_equal 56	truck run_57
		accum 3 trigger_if_equal 57	truck run_58
		accum 3 trigger_if_equal 58	truck run_59
		accum 3 trigger_if_equal 59	truck run_60
		accum 3 trigger_if_equal 60	truck run_61
		accum 3 trigger_if_equal 61	truck run_62
		accum 3 trigger_if_equal 62	truck run_63
		accum 3 trigger_if_equal 63	truck run_64
		accum 3 trigger_if_equal 64	truck run_65
		accum 3 trigger_if_equal 65	truck run_66
		accum 3 trigger_if_equal 66	truck run_67
		accum 3 trigger_if_equal 67	truck run_68
		accum 3 trigger_if_equal 68	truck run_69
		accum 3 trigger_if_equal 69	truck run_70
		accum 3 trigger_if_equal 70	truck run_71
		accum 3 trigger_if_equal 71	truck run_72
		accum 3 trigger_if_equal 72	truck run_73
		accum 3 trigger_if_equal 73	truck run_74
		accum 3 trigger_if_equal 74	truck run_75
		accum 3 trigger_if_equal 75	truck run_76
		accum 3 trigger_if_equal 76	truck run_77
		accum 3 trigger_if_equal 77	truck run_78
		accum 3 trigger_if_equal 78	truck run_79
		accum 3 trigger_if_equal 79	truck run_80
		accum 3 trigger_if_equal 80	truck run_81
		accum 3 trigger_if_equal 81	truck run_82
		accum 3 trigger_if_equal 82	truck run_83
		accum 3 trigger_if_equal 83	truck run_84
		accum 3 trigger_if_equal 84	truck run_85
		accum 3 trigger_if_equal 85	truck run_86
		accum 3 trigger_if_equal 86	truck run_87
		accum 3 trigger_if_equal 87	truck run_88
		accum 3 trigger_if_equal 88	truck run_89
		accum 3 trigger_if_equal 89	truck run_90
		accum 3 trigger_if_equal 90	truck run_91
		accum 3 trigger_if_equal 91	truck run_92
		accum 3 trigger_if_equal 92	truck run_93
		accum 3 trigger_if_equal 93	truck run_94
		accum 3 trigger_if_equal 94	truck run_95
		accum 3 trigger_if_equal 95	truck run_96
		accum 3 trigger_if_equal 96	truck run_97
		accum 3 trigger_if_equal 97	truck run_98
		
	}
	//STUCKCHECK////////////////////////////////////
		trigger stuck_check
	{
		accum 1 bitreset 3
		trigger truck stuck_check_scriptlockout
		trigger truck stuck_check_finished
	}

	trigger stuck_check_finished
	{
		accum 3 abort_if_not_equal 98

		accum 1 bitset 3
	}

	trigger stuck_check_scriptlockout
	{
		accum 1 abort_if_not_bitset 4

		accum 1 bitset 3
	}
//STOPCHECK///////////////////////////////////////////////

	

	trigger stopcheck_setup
	{
		accum 1 bitset 6				// stop - no pushing
		accum 1 abort_if_bitset 8		// no one in the trigger, abort

		trigger truck stuck_check		// call the stop check function
		accum 1 abort_if_bitset 3		// we're stuck so break out

		accum 1 bitreset 6				// we're free to keepgoing
	}

	trigger stopcheck
	{
		trigger truck stopcheck_setup
		accum 1 abort_if_not_bitset 6

		trigger truck script_lockout

		// Any just stopped moving stuff goes here
		
		trigger truck_engine stop
		trigger truck 		wheels_stop 
		
		// <<<<< stop animation goes here

		trigger truck script_lockout_stop
		resetscript
	}

	// ========================================
	// ========================================




	// ========================================
	// script lockouts

	trigger script_lockout
	{
		accum 1 bitset 4
	}

	trigger script_lockout_stop
	{
		accum 1 bitreset 4
	}

	// ========================================
	// ========================================


	// ========================================
	// enable/disable

	trigger truck_enable
	{
		trigger truck stuck_check
		accum 1 abort_if_bitset 3 	// stuck check

		accum 4 set 0				// reset stop counter
		accum 1 bitreset 8			// reset stop check

		accum 1 abort_if_bitset 2 	// already following spline
		accum 1 abort_if_bitset 4 	// script lockout

		accum 1 abort_if_bitset 7 	// death check

		// Any just started moving stuff goes here
		trigger truck_engine start
		trigger truck wheels_forward
		// <<<<< start animation goes here
		trigger truck move
	}

	trigger truck_disable
	{
		accum 4 inc 1				// up the stop counter
		accum 4 abort_if_less_than 2

		accum 1 bitset 8
		
		trigger truck deathcheck
		
	}

	// ========================================
	// ========================================

	// ========================================
	// death / rebirth

	rebirth
	{
		accum 1 bitreset 7 // we're alive again
		accum 1 bitreset 9 // we're visibly alive

		changemodel models/mapobjects/blitz_sd/blitzbody.md3

		setstate truck_smoke invisible

		trigger truck move
	}
//TRUCK DEATH///////////////////////////////////////////////
	
	death
	{
		accum 1 bitset 7
	}

	trigger deathcheck
	{
		accum 1 abort_if_not_bitset 7	// are we dead?
		accum 1 abort_if_bitset 9		// are we not already visibly dead?
		accum 1 abort_if_bitset 2		// are we not following a spline?
		accum 1 abort_if_bitset 4		// are we not in a script lockout?

		accum 1 bitset 9				// we're now visibly dead

		wm_announce "The Truck has been damaged!"

		setstate truck_smoke default
		kill truck_construct

		trigger truck_engine sound_death
		
		trigger truck wheels_stop
		// <<<< stop anim goes here

		changemodel models/mapobjects/blitz_sd/blitzbody_damaged.md3

		resetscript
	}
}

	truck_bwheel2
	{
		spawn
		{
		wait 500

		attachtotag truck tag_wback
		}

		trigger forward
		{
		setrotation 130 0 0
		}

		trigger backward
		{
		setrotation -130 0 0
		}

		trigger stop
		{
		stoprotation
		}
	}

	truck_fwheel
	{
		spawn
		{
		wait 500

		attachtotag truck tag_wfront
		}

		trigger forward
		{
			setrotation 130 0 0
		}

		trigger backward
		{
			setrotation -130 0 0
		}

		trigger stop
		{
			stoprotation
		}
}

truck_trigger
{
	spawn
	{
		wait 500

		attachtotag truck tag_wback
	}
}

truck_disabler
{
	trigger run
	{
		trigger truck truck_disable
	}
}

truck_enabler
{
	trigger run
	{
		trigger truck truck_enable
	}
}


//TRAIN///////////////////////////////////////////////////////
//////////////////////////////////////////////////////////

// **********************************************
// ****************** TRAIN STUFF ***************
// **********************************************

train_smoke
{
	spawn
	{
		wait 300
		attachtotag train tag_train 
		setstate train_smoke default
	}
}

// sound "thread"
train_engine
{
	spawn
	{
		wait 200
		attachtotag train tag_train 
	}

	trigger start
	{
		trigger train_engine sound_start
		wait 950
		trigger train_engine sound_move
	}

	trigger stop
	{
		trigger train_engine sound_stop
		wait 950
		trigger train_engine sound_idle
	}

	// ========================================
	// sound events
	trigger sound_idle
	{
		playsound sound/vehicles/truck/truck_idle.wav looping
	}

	trigger sound_start
	{
		stopsound
		playsound sound/vehicles/truck/truck_revup.wav volume 96
	}

	trigger sound_move
	{
		playsound sound/vehicles/truck/truck_move.wav looping
		stopsound
		playsound sound/bridges/train_move2.wav looping 
	}

	trigger sound_stop
	{
		stopsound
		playsound sound/vehicles/truck/truck_revdown.wav volume 96
	}

	trigger sound_death
	{
		stopsound
		playsound sound/vehicles/truck/truck_stop.wav volume 96
	}

	// ========================================
	// ========================================
}

train_build
{
	spawn
	{
		wait 500

		attachtotag train tag_train 
	}
}

train_construct
{
	spawn
	{
		constructible_class 2
		constructible_health 2000
		constructible_constructxpbonus 10
		constructible_destructxpbonus 10
		
	}

	built final
	{
		alertentity train
		trigger train_engine start
		wm_announce "The Train has been repaired!"
	}

	trigger final_pos
    	{
        	constructible_constructxpbonus 3
        	constructible_destructxpbonus 3
    	}

}

// digibob: ok, for once i'm gonna PLAN this one, so NOTHING WILL BREAK EVAR
// ============================================================================
// accum 0, gold bars collected
// accum 1
//  - bit 0: barrier 1 status 	( 0 = destroyed, 	1 = built 		)
//  - bit 1: barrier 2 status 	( 0 = destroyed, 	1 = built 		)
//  - bit 2: spline status 		( 0 = not moving, 	1 = moving 		)
//  - bit 3: stuck check flag 	( 0 = not stuck, 	1 = stuck 		)
//  - bit 4: script lockout 	( 0 = no lockout, 	1 = lockout		)
//  - bit 5: blank 				( 									)
//  - bit 6: temp register 		(XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
//  - bit 7: death status 		( 0 = alive, 		1 = dead		)
//  - bit 8: player check 		( 0 = players, 		1 = no players	)
//  - bit 9: visible state		( 0 = alive, 		1 = dead		)
// accum 2, blank
// accum 3, current movement loop position
// accum 4, stop counter
// accum 5, blank
// accum 6, blank
// accum 7, blank
// ============================================================================
// spline points are tspln_X with X = 1 to 23
// ============================================================================
// wheel events:
//  - wheels_forward
//  - wheels_backward
//  - wheels_stop

train
{
	spawn
	{
	faceangles 0 270 0 50
	}

	// movement ==============================

	trigger move_check
	{
		trigger train stuck_check
		accum 1 abort_if_bitset 3

		trigger train dispatch
	}

	trigger move
	{
		trigger train move_check
		
		wait 500
	
		trigger train move
	}

	// ========================================
	// ========================================


	trigger run_continue
	{
		
		trigger train deathcheck
		trigger train stopcheck
		trigger train move
	}

	trigger run_1
	{
		accum 1 bitset 2
		followspline 0 trnspln1 100 wait length 304 
		accum 1 bitreset 2

		accum 3 set 1

		trigger train run_continue
	}

	trigger run_2
	{
		accum 1 bitset 2
		followspline 0 trnspln2 125 wait length 304 
		accum 1 bitreset 2

		accum 3 set 2
		trigger train run_continue
	}

	trigger run_3
	{
		accum 1 bitset 2
		followspline 0 trnspln3 150 wait length 304 
		accum 1 bitreset 2

		accum 3 set 3

		trigger train run_continue
	}

	trigger run_4
	{
		accum 1 bitset 2
		followspline 0 trnspln4 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 4
		trigger train run_continue
	}

	trigger run_5
	{
		
		accum 1 bitset 2
		followspline 0 trnspln5 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 5
		trigger train run_continue
	}

	trigger run_6
	{
		accum 1 bitset 2
		followspline 0 trnspln6 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 6
		trigger train run_continue
	}

	trigger run_7
	{
		accum 1 bitset 2
		followspline 0 trnspln7 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 7
		trigger train run_continue
	}

	trigger run_8
	{
		accum 1 bitset 2
		followspline 0 trnspln8 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 8
		trigger train run_continue
	}

	trigger run_9
	{
		accum 1 bitset 2
		followspline 0 trnspln9 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 9
		trigger train run_continue
	}

	trigger run_10
	{
		accum 1 bitset 2
		followspline 0 trnspln10 150 wait length 304 
		accum 1 bitreset 2

		accum 3 set 10
		trigger train run_continue
	}

	trigger run_11
	{
		accum 1 bitset 2
		followspline 0 trnspln11 150 wait length 304 
		accum 1 bitreset 2

		accum 3 set 11
		trigger train run_continue
	}

	trigger run_12
	{
		accum 1 bitset 2
		followspline 0 trnspln12 150 wait length 304 
		accum 1 bitreset 2

		accum 3 set 12
		trigger train run_continue
	}

	trigger run_13
	{
		accum 1 bitset 2
		followspline 0 trnspln13 150 wait length 304 
		accum 1 bitreset 2

		accum 3 set 13
		trigger train run_continue
	}

	trigger run_14
	{
		accum 1 bitset 2
		followspline 0 trnspln14 150 wait length 304 
		accum 1 bitreset 2

		accum 3 set 14
		trigger train run_continue
	}

	trigger run_15
	{
		accum 1 bitset 2
		followspline 0 trnspln15 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 15
		trigger train run_continue
	}

	trigger run_16
	{
		accum 1 bitset 2
		followspline 0 trnspln16 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 16
		trigger train run_continue
	}

	trigger run_17
	{
		accum 1 bitset 2
		followspline 0 trnspln17 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 17

		trigger train run_continue
	}

	trigger run_18
	{
		accum 1 bitset 2
		followspline 0 trnspln18 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 18
		trigger train run_continue
	}

	trigger run_19
	{
		
		accum 1 bitset 2
		followspline 0 trnspln19 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 19
		trigger train run_continue
	}

	trigger run_20
	{
		accum 1 bitset 2
		followspline 0 trnspln20 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 20
		trigger train run_continue
	}

	trigger run_21
	{
		accum 1 bitset 2
		followspline 0 trnspln21 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 21
		trigger train run_continue
	}

	trigger run_22
	{
		accum 1 bitset 2
		followspline 0 trnspln22 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 22
		trigger train run_continue
	}

	trigger run_23
	{
		accum 1 bitset 2
		followspline 0 trnspln23 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 23
		trigger train run_continue
	}

	trigger run_24
	{
		accum 1 bitset 2
		followspline 0 trnspln24 150 wait length 304
		accum 1 bitreset 2
		
		accum 3 set 24
		trigger train run_continue 

	}

	trigger run_25
	{
		accum 1 bitset 2
		followspline 0 trnspln25 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 25
		trigger train run_continue 
	}
	trigger run_26
	{
		accum 1 bitset 2
		followspline 0 trnspln26 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 26
		trigger train run_continue 
	}
	trigger run_27
	{
		accum 1 bitset 2
		followspline 0 trnspln27 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 27
		trigger train run_continue 

	}
	trigger run_28
	{
		accum 1 bitset 2
		followspline 0 trnspln28 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 28
		trigger train run_continue 

	}
	trigger run_29
	{
		accum 1 bitset 2
		followspline 0 trnspln29 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 29
		trigger train run_continue 

	}
	trigger run_30
	{
		accum 1 bitset 2
		followspline 0 trnspln30 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 30
		trigger train run_continue 

	}
	trigger run_31
	{
		accum 1 bitset 2
		followspline 0 trnspln31 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 31
		trigger train run_continue 

	}
	trigger run_32
	{
		accum 1 bitset 2
		followspline 0 trnspln32 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 32
		trigger train run_continue 

	}
	trigger run_33
	{
		accum 1 bitset 2
		followspline 0 trnspln33 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 33
		trigger train run_continue 

	}
	trigger run_34
	{
		accum 1 bitset 2
		followspline 0 trnspln34 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 34
		trigger train run_continue 

	}
	trigger run_35
	{
		accum 1 bitset 2
		followspline 0 trnspln35 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 35
		trigger train run_continue 

	}
	trigger run_36
	{
		accum 1 bitset 2
		followspline 0 trnspln36 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 36
		trigger train run_continue 

	}
	trigger run_37
	{
		accum 1 bitset 2
		followspline 0 trnspln37 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 37
		trigger train run_continue 

	}
	trigger run_38
	{
		accum 1 bitset 2
		followspline 0 trnspln38 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 38
		trigger train run_continue 

	}
	trigger run_39
	{
		accum 1 bitset 2
		followspline 0 trnspln39 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 39
		trigger train run_continue 

	}
	trigger run_40
	{
		accum 1 bitset 2
		followspline 0 trnspln40 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 40
		trigger train run_continue 

	}
	trigger run_41
	{
		accum 1 bitset 2
		followspline 0 trnspln41 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 41
		trigger train run_continue 

	}
	trigger run_42
	{
		accum 1 bitset 2
		followspline 0 trnspln42 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 42
		trigger train run_continue 

	}
	trigger run_43
	{
		accum 1 bitset 2
		followspline 0 trnspln43 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 43
		trigger train run_continue 

	}
	trigger run_44
	{
		accum 1 bitset 2
		followspline 0 trnspln44 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 44
		trigger train run_continue 

	}
	trigger run_45
	{
		accum 1 bitset 2
		followspline 0 trnspln45 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 45
		trigger train run_continue 

	}
	trigger run_46
	{
		accum 1 bitset 2
		followspline 0 trnspln46 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 46
		trigger train run_continue 

	}
	trigger run_47
	{
		accum 1 bitset 2
		followspline 0 trnspln47 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 47
		trigger train run_continue 

	}
	trigger run_48
	{
		accum 1 bitset 2
		followspline 0 trnspln48 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 48
		trigger train run_continue 

	}
	trigger run_49
	{
		accum 1 bitset 2
		followspline 0 trnspln49 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 49
		trigger train run_continue 

	}
	trigger run_50
	{
		accum 1 bitset 2
		followspline 0 trnspln50 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 50
		trigger train run_continue 

	}
	trigger run_51
	{
		accum 1 bitset 2
		followspline 0 trnspln51 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 51
		trigger train run_continue 

	}
	trigger run_52
	{
		accum 1 bitset 2
		followspline 0 trnspln52 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 52
		trigger train run_continue 

	}
	trigger run_53
	{
		accum 1 bitset 2
		followspline 0 trnspln53 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 53
		trigger train run_continue 

	}
	trigger run_54
	{
		accum 1 bitset 2
		followspline 0 trnspln54 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 54
		trigger train run_continue 

	}
	trigger run_55
	{
		accum 1 bitset 2
		followspline 0 trnspln55 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 55
		trigger train run_continue 

	}
	trigger run_56
	{
		accum 1 bitset 2
		followspline 0 trnspln56 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 56
		trigger train run_continue 

	}
	trigger run_57
	{
		accum 1 bitset 2
		followspline 0 trnspln57 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 57
		trigger train run_continue 

	}
	trigger run_58
	{
		accum 1 bitset 2
		followspline 0 trnspln58 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 58
		trigger train run_continue 

	}
	trigger run_59
	{
		accum 1 bitset 2
		followspline 0 trnspln59 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 59
		trigger train run_continue 

	}
	trigger run_60
	{
		accum 1 bitset 2
		followspline 0 trnspln60 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 60
		trigger train run_continue 

	}
	trigger run_61
	{
		accum 1 bitset 2
		followspline 0 trnspln61 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 61
		trigger train run_continue 

	}
	trigger run_62
	{
		accum 1 bitset 2
		followspline 0 trnspln62 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 62
		trigger train run_continue 

	}
	trigger run_63
	{
		accum 1 bitset 2
		followspline 0 trnspln63 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 63
		trigger train run_continue 

	}
	trigger run_64
	{
		accum 1 bitset 2
		followspline 0 trnspln64 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 64
		trigger train run_continue 

	}
	trigger run_65
	{
		accum 1 bitset 2
		followspline 0 trnspln65 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 65
		trigger train run_continue 

	}
	trigger run_66
	{
		accum 1 bitset 2
		followspline 0 trnspln66 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 66
		trigger train run_continue

	}
	trigger run_67
	{
		accum 1 bitset 2
		followspline 0 trnspln67 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 67
		trigger train run_continue

	}
	trigger run_68
	{
		accum 1 bitset 2
		followspline 0 trnspln68 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 68
		trigger train run_continue 

	}
	trigger run_69
	{
		accum 1 bitset 2
		followspline 0 trnspln69 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 69
		trigger train run_continue 

	}
	trigger run_70
	{
		accum 1 bitset 2
		followspline 0 trnspln70 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 70
		trigger train run_continue 

	}
	trigger run_71
	{
		accum 1 bitset 2
		followspline 0 trnspln71 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 71
		trigger train run_continue 

	}
	trigger run_72
	{
		accum 1 bitset 2
		followspline 0 trnspln72 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 72
		trigger train run_continue 

	}
	trigger run_73
	{
		accum 1 bitset 2
		followspline 0 trnspln73 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 73
		trigger train run_continue 

	}
	trigger run_74
	{
		accum 1 bitset 2
		followspline 0 trnspln74 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 74
		trigger train run_continue 

	}
	trigger run_75
	{
		accum 1 bitset 2
		followspline 0 trnspln75 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 75
		trigger train run_continue 

	}
	trigger run_76
	{
		accum 1 bitset 2
		followspline 0 trnspln76 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 76
		trigger train run_continue 

	}
	trigger run_77
	{
		accum 1 bitset 2
		followspline 0 trnspln77 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 77
		trigger train run_continue 

	}
	trigger run_78
	{
		accum 1 bitset 2
		followspline 0 trnspln78 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 78
		trigger train run_continue 

	}
	trigger run_79
	{
		accum 1 bitset 2
		followspline 0 trnspln79 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 79
		trigger train run_continue 

	}
	trigger run_80
	{
		accum 1 bitset 2
		followspline 0 trnspln80 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 80
		trigger train run_continue 

	}
	trigger run_81
	{
		accum 1 bitset 2
		followspline 0 trnspln81 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 81
		trigger train run_continue 

	}
	trigger run_82
	{
		accum 1 bitset 2
		followspline 0 trnspln82 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 82
		trigger train run_continue 

	}
	trigger run_83
	{
		accum 1 bitset 2
		followspline 0 trnspln83 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 83
		trigger train run_continue 

	}
	trigger run_84
	{
		accum 1 bitset 2
		followspline 0 trnspln84 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 84
		trigger train run_continue 

	}
	trigger run_85
	{
		accum 1 bitset 2
		followspline 0 trnspln85 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 85
		trigger train run_continue 

	}
	trigger run_86
	{
		accum 1 bitset 2
		followspline 0 trnspln86 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 86
		trigger train run_continue 

	}
	trigger run_87
	{
		accum 1 bitset 2
		followspline 0 trnspln87 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 87
		trigger train run_continue 

	}
	trigger run_88
	{
		accum 1 bitset 2
		followspline 0 trnspln88 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 88
		trigger train run_continue 

	}
	trigger run_89
	{
		accum 1 bitset 2
		followspline 0 trnspln89 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 89
		trigger train run_continue 

	}
	trigger run_90
	{
		accum 1 bitset 2
		followspline 0 trnspln90 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 90
		trigger train run_continue 

	}
	trigger run_91
	{
		accum 1 bitset 2
		followspline 0 trnspln91 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 91
		trigger train run_continue 

	}
	trigger run_92
	{
		accum 1 bitset 2
		followspline 0 trnspln92 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 92
		trigger train run_continue 

	}
	trigger run_93
	{
		accum 1 bitset 2
		followspline 0 trnspln93 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 93
		trigger train run_continue 

	}
	trigger run_94
	{
		accum 1 bitset 2
		followspline 0 trnspln94 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 94
		trigger train run_continue 

	}
	trigger run_95
	{
		accum 1 bitset 2
		followspline 0 trnspln95 150 wait length 304
		accum 1 bitreset 2

		accum 3 set 95
		trigger train run_continue 

	}
	trigger run_96
	{
		accum 1 bitset 2
		followspline 0 trnspln96 125 wait length 304
		accum 1 bitreset 2

		accum 3 set 96
		trigger train run_continue 

	}
	trigger run_97
	{
		accum 1 bitset 2
		followspline 0 trnspln97 70 wait length 304
		accum 1 bitreset 2
		accum 3 set 97
		trigger train run_continue 
		
	}

		trigger run_98
	{
		accum 1 bitset 2
		followspline 0 trnspln98 25 wait length 304
		accum 1 bitreset 2
		accum 3 set 98
		trigger train run_continue

		trigger game_manager allies_win 
	}
	
		trigger run_99
	{
		accum 1 bitset 2
		followspline 0 trnspln99 100 wait length 304
		accum 1 bitreset 2
		accum 3 set 99
		trigger train run_continue 
	}

		trigger run_100
	{
		accum 1 bitset 2
		followspline 0 trnspln100 150 wait length 304
		accum 1 bitreset 2
		accum 3 set 100
		trigger train run_continue 
	}

		trigger run_101
	{
		accum 1 bitset 2
		followspline 0 trnspln101 150 wait length 304
		accum 1 bitreset 2
		accum 3 set 101
		trigger train run_continue 
	}

		trigger run_102
	{
		accum 1 bitset 2
		followspline 0 trnspln102 150 wait length 304
		accum 1 bitreset 2
		accum 3 set 102
		trigger train run_continue 
	}

		trigger run_103
	{
		accum 1 bitset 2
		followspline 0 trnspln103 150 wait length 304
		accum 1 bitreset 2
		accum 3 set 103
		trigger train run_continue 
	}

		trigger run_104
	{
		accum 1 bitset 2
		followspline 0 trnspln104 150 wait length 304
		accum 1 bitreset 2
		accum 3 set 104
		trigger train run_continue 
	}
		
		trigger run_105
	{
		accum 1 bitset 2
		followspline 0 trnspln105 150 wait length 304
		accum 1 bitreset 2
		accum 3 set 105
		trigger train run_continue 
	}

		trigger run_106
	{
		accum 1 bitset 2
		accum 1 bitreset 2
		accum 3 set 106
		
		trigger game_manager axis_win
		
	}
	

	trigger dispatch
	{
		accum 3 trigger_if_equal 0 	train run_1
		accum 3 trigger_if_equal 1 	train run_2
		accum 3 trigger_if_equal 2	train run_3
		accum 3 trigger_if_equal 3 	train run_4
		accum 3 trigger_if_equal 4 	train run_5
		accum 3 trigger_if_equal 5 	train run_6
		accum 3 trigger_if_equal 6 	train run_7
		accum 3 trigger_if_equal 7 	train run_8
		accum 3 trigger_if_equal 8 	train run_9
		accum 3 trigger_if_equal 9 	train run_10
		accum 3 trigger_if_equal 10	train run_11
		accum 3 trigger_if_equal 11	train run_12
		accum 3 trigger_if_equal 12	train run_13
		accum 3 trigger_if_equal 13	train run_14
		accum 3 trigger_if_equal 14	train run_15
		accum 3 trigger_if_equal 15	train run_16
		accum 3 trigger_if_equal 16	train run_17
		accum 3 trigger_if_equal 17	train run_18
		accum 3 trigger_if_equal 18	train run_19
		accum 3 trigger_if_equal 19	train run_20
		accum 3 trigger_if_equal 20	train run_21
		accum 3 trigger_if_equal 21	train run_22
		accum 3 trigger_if_equal 22	train run_23
		accum 3 trigger_if_equal 23	train run_24
		accum 3 trigger_if_equal 24	train run_25
		accum 3 trigger_if_equal 25	train run_26
		accum 3 trigger_if_equal 26	train run_27
		accum 3 trigger_if_equal 27	train run_28
		accum 3 trigger_if_equal 28	train run_29
		accum 3 trigger_if_equal 29	train run_30
		accum 3 trigger_if_equal 30	train run_31
		accum 3 trigger_if_equal 31	train run_32
		accum 3 trigger_if_equal 32	train run_33
		accum 3 trigger_if_equal 33	train run_34
		accum 3 trigger_if_equal 34	train run_35
		accum 3 trigger_if_equal 35	train run_36
		accum 3 trigger_if_equal 36	train run_37
		accum 3 trigger_if_equal 37	train run_38
		accum 3 trigger_if_equal 38	train run_39
		accum 3 trigger_if_equal 39	train run_40
		accum 3 trigger_if_equal 40	train run_41
		accum 3 trigger_if_equal 41	train run_42
		accum 3 trigger_if_equal 42	train run_43
		accum 3 trigger_if_equal 43	train run_44
		accum 3 trigger_if_equal 44	train run_45
		accum 3 trigger_if_equal 45	train run_46
		accum 3 trigger_if_equal 46	train run_47
		accum 3 trigger_if_equal 47	train run_48
		accum 3 trigger_if_equal 48	train run_49
		accum 3 trigger_if_equal 49	train run_50
		accum 3 trigger_if_equal 50	train run_51
		accum 3 trigger_if_equal 51	train run_52
		accum 3 trigger_if_equal 52	train run_53
		accum 3 trigger_if_equal 53	train run_54
		accum 3 trigger_if_equal 54	train run_55
		accum 3 trigger_if_equal 55	train run_56
		accum 3 trigger_if_equal 56	train run_57
		accum 3 trigger_if_equal 57	train run_58
		accum 3 trigger_if_equal 58	train run_59
		accum 3 trigger_if_equal 59	train run_60
		accum 3 trigger_if_equal 60	train run_61
		accum 3 trigger_if_equal 61	train run_62
		accum 3 trigger_if_equal 62	train run_63
		accum 3 trigger_if_equal 63	train run_64
		accum 3 trigger_if_equal 64	train run_65
		accum 3 trigger_if_equal 65	train run_66
		accum 3 trigger_if_equal 66	train run_67
		accum 3 trigger_if_equal 67	train run_68
		accum 3 trigger_if_equal 68	train run_69
		accum 3 trigger_if_equal 69	train run_70
		accum 3 trigger_if_equal 70	train run_71
		accum 3 trigger_if_equal 71	train run_72
		accum 3 trigger_if_equal 72	train run_73
		accum 3 trigger_if_equal 73	train run_74
		accum 3 trigger_if_equal 74	train run_75
		accum 3 trigger_if_equal 75	train run_76
		accum 3 trigger_if_equal 76	train run_77
		accum 3 trigger_if_equal 77	train run_78
		accum 3 trigger_if_equal 78	train run_79
		accum 3 trigger_if_equal 79	train run_80
		accum 3 trigger_if_equal 80	train run_81
		accum 3 trigger_if_equal 81	train run_82
		accum 3 trigger_if_equal 82	train run_83
		accum 3 trigger_if_equal 83	train run_84
		accum 3 trigger_if_equal 84	train run_85
		accum 3 trigger_if_equal 85	train run_86
		accum 3 trigger_if_equal 86	train run_87
		accum 3 trigger_if_equal 87	train run_88
		accum 3 trigger_if_equal 88	train run_89
		accum 3 trigger_if_equal 89	train run_90
		accum 3 trigger_if_equal 90	train run_91
		accum 3 trigger_if_equal 91	train run_92
		accum 3 trigger_if_equal 92	train run_93
		accum 3 trigger_if_equal 93	train run_94
		accum 3 trigger_if_equal 94	train run_95
		accum 3 trigger_if_equal 95	train run_96
		accum 3 trigger_if_equal 96	train run_97
		accum 3 trigger_if_equal 97	train run_98
		accum 3 trigger_if_equal 98	train run_99
		accum 3 trigger_if_equal 99	train run_100
		accum 3 trigger_if_equal 100	train run_101
		accum 3 trigger_if_equal 101	train run_102
		accum 3 trigger_if_equal 102	train run_103	
		accum 3 trigger_if_equal 103	train run_104
		accum 3 trigger_if_equal 104	train run_105
		accum 3 trigger_if_equal 105	train run_106
		
	}
	//STUCKCHECK////////////////////////////////////
	trigger stuck_check
	{
		accum 1 bitreset 3
	
		trigger train stuck_check_scriptlockout
		trigger train stuck_check_finished
	}

	trigger stuck_check_finished
	{
		accum 3 abort_if_not_equal 106

		accum 1 bitset 3
	}

	trigger stuck_check_scriptlockout
	{
		accum 1 abort_if_not_bitset 4

		accum 1 bitset 3
	}
//STOPCHECK///////////////////////////////////////////////

	

	trigger stopcheck_setup
	{
		accum 1 bitset 6				// stop - no pushing
		accum 1 abort_if_bitset 8		// no one in the trigger, abort

		trigger train stuck_check		// call the stop check function
		accum 1 abort_if_bitset 3		// we're stuck so break out

		accum 1 bitreset 6			// we're free to keepgoing
	}

	trigger stopcheck
	{
		trigger train stopcheck_setup
		accum 1 abort_if_not_bitset 6

		trigger train script_lockout

		// Any just stopped moving stuff goes here
		
		trigger train_engine stop
		//trigger truck wheels_stop 
		
		// <<<<< stop animation goes here

		trigger train script_lockout_stop
		resetscript 
	}

	// ========================================
	// ========================================




	// ========================================
	// script lockouts

	trigger script_lockout
	{
		accum 1 bitset 4
	}

	trigger script_lockout_stop
	{
		accum 1 bitreset 4
	}

	// ========================================
	// ========================================


	// ========================================
	// enable/disable

	trigger train_enable
	{
		trigger train stuck_check
		accum 1 abort_if_bitset 3 	// stuck check

		accum 4 set 0				// reset stop counter
		accum 1 bitreset 8			// reset stop check

		accum 1 abort_if_bitset 2 	// already following spline
		accum 1 abort_if_bitset 4 	// script lockout
		
		accum 1 abort_if_bitset 7 	// death check

		// Any just started moving stuff goes here
		trigger train_engine start
		
		// <<<<< start animation goes here
		trigger train move
	}

	trigger train_disable
	{
		accum 4 inc 1				// up the stop counter
		accum 4 abort_if_less_than 2

		accum 1 bitset 8
		
		trigger train deathcheck
		
	}

	// ========================================
	// ========================================

	// ========================================
	// death / rebirth

	rebirth
	{
		accum 1 bitreset 7 // we're alive again
		accum 1 bitreset 9 // we're visibly alive

		
		setstate train_smoke invisible
		wm_announce "The Train has been repaired"

		trigger train move
	}
//TRAIN DEATH///////////////////////////////////////////////
	
	death
	{
		accum 1 bitset 7
	}

	trigger deathcheck
	{
		accum 1 abort_if_not_bitset 7	// are we dead?
		accum 1 abort_if_bitset 9		// are we not already visibly dead?
		accum 1 abort_if_bitset 2		// are we not following a spline?
		accum 1 abort_if_bitset 4		// are we not in a script lockout?

		accum 1 bitset 9				// we're now visibly dead

		wm_announce "The Train has been damaged!"

		setstate train_smoke default
		kill train_construct

		trigger train_engine sound_death
		
		resetscript

//barrier stuff in here
				
	}
}

////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
train_trigger
{
	spawn
	{
		wait 500

		attachtotag train tag_train 

	}
}

train_disabler
{
	trigger run
	{
		trigger train train_disable
	}
}

train_enabler
{
	trigger run
	{
		trigger train train_enable
	}
}
////////////////////////////trainb////////////////////////////
///////////////////with visible brushes//////////////////////

trainb
{
	spawn
	{
	faceangles 0 -270 0 50
	
	attachtotag train tag_train 
	
	}
}

(cementoske) #5

nice one oxygen lol!


(Oxygen - o2) #6

yeah, ummm wtf i edited it!!!

fucking dumb forum!


(mrfin) #7

ok…well done oxygen

last time I attempted to post a script of this length it wouldn’t post! - hence the link

You did some editing?! …

Thanks for looking :cool:


(Chruker) #8

oxygen: Try changing the last

 to 

then perhaps it works.

Anyway mrfin, you seem to have made progress since I last had a look at your map. I see some terrain in the screenshot now :slight_smile:

Anyway I’m looking forward to taking a ride on the train.

What I would do in this situation, would be to add a stuck check in the second vehicle. This stuck check should just check an accum to see if the vehicle can move. At map start this accum is set with a value representing disabled. Once the first vehicle gets to where it needs to go, it calls a function in the second vehicle which sets a value that represents enable. The second vehicle can now move.