if ${Force.InnKeeperSet}&&!${Force.HearthArea.Equal[${WoWScript[GetBindLocation()}]}&& ${NPCState_NPC_WaitINNK_Until} <= ${LavishScript.RunningTime} { if ${POI.Type.Equal[INNKEEPER]} && !${POI.IsBlacklisted}&&${POI.Name.Equal[${Force.InnKeep}]} { if ${POI.InUseRange} { if ${WoWScript[GetGossipOptions()](exists)} { This.NPCState_NPC_Wait_Until:Set[${Math.Calc[${LavishScript.RunningTime}+(${This.NPCState_Interact_Wait_Until_Timeout} * ${Bot.GlobalCooldown})]}] return OB_INNKEEPER } else { This.NPCState_NPC_Wait_Until:Set[${Math.Calc[${LavishScript.RunningTime}+(${This.NPCState_Interact_Wait_Until_Timeout} * ${Bot.GlobalCooldown})]}] return OB_USE_NPC } } else { return OB_NPC_MOVE } } else { if ${POI.SetNearestPOI[INNKEEPER]}&&${POI.Name.Equal[${Force.InnKeep}]} { return OB_NPC_MOVE } else { This:Output[Nearest Innkeeper is Not correct, but we still need one] This.NPCState_NPC_WaitINNK_Until:Set[${Math.Calc[${LavishScript.RunningTime}+(${This.NPCState_Interact_Wait_Until_Timeout} * ${Bot.GlobalCooldown})]}] return OB_IDLE } } } if ${Force.InnKeeperSet}&&${Force.HearthArea.Equal[${WoWScript[GetBindLocation()}]} { Force.InnKeeperSet:Set[0] This:Output[In Force Innkeeper, bind location is Equal reseting flag] }