All pastes #590917 Raw Edit

Stuff

public text v1 · immutable
#590917 ·published 2007-06-26 21:14 UTC
rendered paste body
function NoteAction(string Param1, string Param2, string Param3, string Param4, string Param5, string Param6)
{
	echo This Point has a Note, 1:"${Param1}" 2:"${Param2}" 3:"${Param3}" 4:"${Param4}" 5:"${Param5}" 6:"${Param6}"
	declare Nodes int local 0
	declare NodeCount int local 0
	switch ${Param1}
	{
		case WindRider
			if ${Param1.Equal[WindRider]}
			{
				echo test1
				if ${Me.Buff["Travel Form"](exists)}
				{
					WowScript CastShapeshiftForm(4)
					wait 40 !${Me.Buff["Travel Form Form"](exists)}
					wait 10
				}
				Object[-nearest 1,"${Param2}"]:Use
				wait 20
				WoWScript SelectGossipOption(1)
				wait 20
				Nodes:Set[${WoWScript[NumTaxiNodes()]}]
				echo outside node/ct ${Nodes} ${NodeCount}
				call ScanWindRiderFast
				while (${NodeCount:Inc} <= ${Nodes})
				{
					echo nodes = ${Nodes} Nodecount = ${NodeCount}
					echo Node Name = "${WoWScript[TaxiNodeName(${NodeCount})]}"
					echo ${Param6}
					if ${WoWScript["TaxiNodeName(${NodeCount})"].Equal["${Param6}"]}
					{
						WoWScript TakeTaxiNode(${NodeCount})
						wait 100 ${Me.Flying}
						if !${Me.Flying}
						{
							MessageBox "I am not flying for some reason.  Something went wrong at the flight master.  Continuing is probably a bad idea"
						}
						while (${Me.Flying}
						{
							ExecuteQueued
							waitframe
							waitframe
						}
					}
				}
				if !${Nodes}
				{
					MessageBox "No taxi nodes?  Something went wrong at the flight master.  Continuing is probably a bad idea"
				}
			}
		break
	}
}		
			
function ScanWindRiderFast()
{
	echo Doing a fast scan of the open Wind Rider, saving all paths as one-way
	declare Nodes int local 0
	declare NodeCount int local 0
	declare HereName string
	declare CurrentNode int local 0
	Nodes:Set[${WoWScript[NumTaxiNodes()]}]
	while ${NodeCount:Inc}<=${Nodes}
	{
		if ${WoWScript["TaxiNodeGetType(${NodeCount})",1].Equal["CURRENT"]}
		{
			CurrentNode:Set[${NodeCount}]
			echo Found the local node at #${CurrentNode}
			break
		}
	}
	if ${NodeCount}<=${Nodes} && ${WoWScript["TaxiNodeGetType(${CurrentNode})",1].Equal["CURRENT"]}
	{
		CurrentNode:Set[${NodeCount}]
		call SquishName "${WoWScript["TaxiNodeName(${NodeCount})"]}"
		HereName:Set["${Return}"]
		executeatom CurrentContinent
		NodeCount:Set[0]
		while (${NodeCount:Inc} <= ${Nodes})
		{
			call SquishName "${WoWScript["TaxiNodeName(${NodeCount})"]}"
			if ${NodeCount}!=${CurrentNode}
			{
				if !${Navigation.World["${World}"].Point["${Return}WindRider"](exists)}
				{
					echo ${Return}WindRider doesn't exist yet, making a dummy point, he should be visited and scanned before flying there with RunningMan.
					NavPoint -set "${World}" "${Return}WindRider" 99999 99999 99999
					Navigation.World["${World}"].Point["${Return}WindRider"]:SetNote[WindRider UNKNOWN_NAME "${WoWScript["TaxiNodeName(${NodeCount})"]}"]
				}
				echo NavPoint -connect ${World} ${HereName}WindRider ${Return}WindRider
				NavPoint -connect ${World} ${HereName}WindRider ${Return}WindRider
			}
			wait 1
		}
	}
	wait 5
	call SaveWorld Fast
}