define script ImmortalManScript

begin script ImmortalManScript

oMan = 0
RNumber = 0
Held = 0
Chk = 0
oDis = 0
oStart = 0
GuyHome = 0
Cnt = 0
Ctr = 0
Pub[NUMBER_OF_TOWNS]
Check[NUMBER_OF_TOWNS]
Rand = 0

start

	// Let's go pub crawling.
	force while Cnt < townCount
		Check[Cnt] = get building ABODE_NUMBER_PUB in Town[Cnt] min built 1.0
		if Check[Cnt] exists and get Town[Cnt] player != 0
			Pub[Ctr] = Check[Cnt]
			Ctr++
		end if
		Cnt++
	end while

	if Ctr != 0
		Rand = number from 0 to Ctr - 1
		oMan = create SCRIPT_OBJECT_TYPE_VILLAGER VILLAGER_INFO_MERRYMAN8 at {Pub[Rand]}+{6,0,0}
		enable oMan indestructible
		disable oMan hurt by fire
		enable oMan physics tracking
		oStart = create influence on oMan radius 5

		begin loop
			oDis = get distance from camera position to {oMan}
			if oDis <= 20
				begin cinema
					move camera focus to {oMan} time 1
					make evil spirit appear
					wait 1 seconds
					make evil spirit point to oMan
					say "BW2T_SCRIPT_04FINAL_THROWBLOKE_340"
					wait 3 seconds
					stop evil spirit pointing
					wait 2 seconds
					send evil spirit home
				end cinema
				oDis = 1
			end if
			until oDis == 1
		end loop

		begin loop
		Chk = 0
		clear oMan hit land
		if oMan == get object held
			RNumber = number from 1 to 7
				if RNumber == 1
				begin dialogue
					say "BW2T_SCRIPT_08FINAL_CHALLENGE_THROW_BLOKE2_100"
				end dialogue
				elsif RNumber == 2
				begin dialogue
					say "BW2T_SCRIPT_08FINAL_CHALLENGE_THROW_BLOKE2_90"
				end dialogue
				elsif RNumber == 3
				begin dialogue
					say "BW2T_SCRIPT_03FINAL_CHALLENGE_THROWBLOKE_09"
				end dialogue
				elsif RNumber == 4
				begin dialogue
					say "BW2T_SCRIPT_03FINAL_CHALLENGE_THROWBLOKE_10"
				end dialogue
				elsif RNumber == 5
				begin dialogue
					say "BW2T_SCRIPT_04FINAL_THROWBLOKE_INHAND_10"
				end dialogue
				elsif RNumber == 6
				begin dialogue
					say "BW2T_SCRIPT_04FINAL_THROWBLOKE_INHAND_60"
				end dialogue
				elsif RNumber == 7
				begin dialogue
					say "BW2T_SCRIPT_04FINAL_THROWBLOKE_INHAND_50"
				end dialogue
				end if

			wait until bindable action BINDABLE_ACTION_TYPE_ACTION performed
			Held = 0
			begin loop
				Held = get object held
				if Held not exists
					wait 3 seconds
					Chk = 0
					begin loop
						oStart = marker at hand position
						if oMan hit land
							begin cinema
							wait 1 seconds
							move camera focus to {oMan} time 1
							move camera position to {oMan}+{20,15,0} time 2
							wait until camera ready
							Chk = get distance from {oStart} to {oMan}
							RNumber = number from 1 to 18
							if RNumber == 1
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_10"
							elsif RNumber == 2
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_20"
							elsif RNumber == 3
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_30"
							elsif RNumber == 4
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_40"
							elsif RNumber == 5
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_50"
							elsif RNumber == 6
								say "BW2T_SCRIPT_03FINAL_CHALLENGE_THROWBLOKE_05"
							elsif RNumber == 7
								say "BW2T_SCRIPT_03FINAL_CHALLENGE_THROWBLOKE_06"
							elsif RNumber == 8
								say "BW2T_SCRIPT_03FINAL_CHALLENGE_THROWBLOKE_07"
							elsif RNumber == 9
								say "BW2T_SCRIPT_08FINAL_CHALLENGE_THROW_BLOKE2_30"
							elsif RNumber == 10
								say "BW2T_SCRIPT_08FINAL_CHALLENGE_THROW_BLOKE2_40"
							elsif RNumber == 11
								say "BW2T_SCRIPT_08FINAL_CHALLENGE_THROW_BLOKE2_50"
							elsif RNumber == 12
								say "BW2T_SCRIPT_08FINAL_CHALLENGE_THROW_BLOKE2_60"
							elsif RNumber == 13
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_80"
							elsif RNumber == 14
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_90"
							elsif RNumber == 15
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_140"
							elsif RNumber == 16
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_160"
							elsif RNumber == 17
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_240"
							else
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_210"
							end if
							clear oMan hit land
							increment tribute by Chk*Chk/2
							wait 5 seconds
							Chk++
							end cinema
						else
							begin dialogue
								say "BW2T_SCRIPT_04FINAL_THROWBLOKE_BEINGTHROWN_110"
							end dialogue
							Chk++
						end if
						until Chk != 0
					end loop
					if oMan is drowning
						begin dialogue
							say "BW2T_SCRIPT_04FINAL_THROWBLOKE_160"
						end dialogue
						Chk++
					end if
				end if
			until Chk != 0
			end loop
		end if
		end loop
	end if	

end script ImmortalManScript