diff --git a/optional/interfaces/mainscreen/fairyring.simba b/optional/interfaces/mainscreen/fairyring.simba index ee29aeee..df05eada 100644 --- a/optional/interfaces/mainscreen/fairyring.simba +++ b/optional/interfaces/mainscreen/fairyring.simba @@ -144,7 +144,7 @@ Example if FairyRing.HandleItem() then WriteLn FairyRing.Item; *) -function TRSFairyRing.HandleItem(): Boolean; +function TRSFairyRing.HandleItem(attempts: Int32 = 2): Boolean; const ITEMS: TRSItemArray = ['Dramen staff', 'Lunar staff']; var @@ -227,8 +227,10 @@ begin if currentTab^.ItemInterface.Contains(Self.Item) then Exit(Self.HandleItem()); + Result := attempts = 0; + if not Result then + Exit(Self.HandleItem(Dec(attempts))); Self.Item := 'null'; - Result := True; end;