
define script AttackBarrels
define script TrackAttackBarrels(nBarrel)

begin script AttackBarrels

	AttackBarrel[5]
	Rand1 = 0
	Rand2 = 0
	BasePos = 0
	Cnt = 0
	Tmp = 0
start

	wait 1 seconds
	begin loop
		Cnt = 0
		force while Cnt < 5
			Rand1 = number from -150 to 150
			Rand2 = number from  -150 to 150
			BasePos = marker at {playerTown}+{Rand1,0,Rand2}

			if AttackBarrel[Cnt] exists and AttackBarrel[Cnt] == get object held
				wait until bindable action BINDABLE_ACTION_TYPE_ACTION performed
				run background script TrackAttackBarrels(AttackBarrel[Cnt])
			elsif AttackBarrel[Cnt] not exists
				wait 2 second
				AttackBarrel[Cnt] = create SCRIPT_OBJECT_TYPE_ROCK MOBILE_STATIC_INFO_NUTOIL_BARREL at {BasePos}
				SCRIPT_OBJECT_PROPERTY_TYPE_SCALE of AttackBarrel[Cnt] = 2
				enable AttackBarrel[Cnt] physics tracking
				disable AttackBarrel[Cnt] set on fire
				Tmp = create influence on AttackBarrel[Cnt] radius 5
				Tmp = create visual effect VISUAL_EFFECT_SCROLL_BEAM at {BasePos} time 1
			end if
			Cnt++
		end while

		Cnt = 0
		if key KB_B down
			force while Cnt < 5
				delete AttackBarrel[Cnt]
				Cnt++
			end while	
		end if
	end loop

end script AttackBarrels

begin script TrackAttackBarrels(nBarrel)

	Held = 0
	oDist = 0
	StopSpot = 0
	Vis = 0
start

	begin loop
		Held = get object held
		if Held not exists
			wait until not nBarrel is moving
			StopSpot = marker at {nBarrel}
			oDist = get distance from hand position to {StopSpot}
			if oDist > 10
				Vis = make player 0 throw miracle MIRACLE_TYPE_FIRE from {StopSpot} heading {StopSpot}
				delete nBarrel
				//increment tribute by 10000
			else
				oDist = -1
			end if
		end if
		until nBarrel not exists or oDist == -1
	end loop

end script TrackAttackBarrels


