Skip to content

Commit 6cf51d1

Browse files
committed
tweaks to TRSMake
1 parent e74b5dc commit 6cf51d1

File tree

1 file changed

+10
-51
lines changed

1 file changed

+10
-51
lines changed

osrs/interfaces/chat/make.simba

Lines changed: 10 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,12 @@ craft certain items in OldSchool RuneScape.
1010
{$INCLUDE_ONCE WaspLib/osrs.simba}
1111

1212
type
13-
14-
(*
15-
## ERSMakeQuantity
16-
```pascal
17-
ERSMakeQuantity = enum(ONE, FIVE, TEN, CUSTOM, X, ALL);
18-
```
19-
Enum representing the make quantity buttons.
20-
*)
21-
ERSMakeQuantity = enum(ONE, FIVE, TEN, CUSTOM, X, ALL);
22-
2313
(*
24-
## TRSMakeQuantityButton
14+
## TRSMakeQuantityButton type
2515
Helper record used to cache make menu buttons.
2616
*)
2717
TRSMakeQuantityButton = record
28-
ButtonType: ERSMakeQuantity;
18+
Quantity: ERSItemQuantity;
2919
Button: TRSButton;
3020
QuantityUpText: String;
3121
end;
@@ -192,24 +182,20 @@ end;
192182
(*
193183
## Make.CreateDynamicQuantityButtons
194184
```pascal
195-
function TRSMake.CreateDynamicQuantityButtons(): array [ERSMakeQuantity] of TRSButton;
185+
function TRSMake.CreateDynamicQuantityButtons(): array of TRSMakeQuantityButton;
196186
```
197187
Returns the visible quantity buttons as a array of TRSMakeQuantityButton.
198188

199189
Example:
200190
```pascal
201-
Writeln (Make.CreateDynamicQuantityButtons());
202-
```
203-
191+
WriteLn Make.CreateDynamicQuantityButtons();
204192
```
205193
*)
206-
207-
function TRSMake.CreateDynamicQuantityButtons(): array of TRSMakeQuantityButton;
194+
function TRSMake.GetQuantityButtons(): array of TRSMakeQuantityButton;
208195
var
209196
boxes: TBoxArray;
210197
i: Integer;
211198
quantityStr: String;
212-
btn: TRSMakeQuantityButton;
213199
begin
214200
boxes := Self.GetQuantityBoxes();
215201
SetLength(Result, Length(boxes));
@@ -218,44 +204,17 @@ begin
218204
begin
219205
quantityStr := OCR.Recognize(boxes[i], RSFonts.PLAIN_11, [Self.TEXT_COLOR, RSFonts.WHITE], 0);
220206

221-
btn.ButtonType := ERSMakeQuantity.String2Quantity(quantityStr);
222-
btn.Button.Bounds := boxes[i];
223-
btn.Button.EnabledColors := [[RSFonts.WHITE, 0]];
207+
Result[i].Quantity := ERSItemQuantity.Integer2Quantity(StrToInt(quantityStr));
208+
Result[i].Button.Bounds := boxes[i];
209+
Result[i].Button.EnabledColors := [[RSFonts.WHITE, 0]];
224210

225211
if quantityStr.Equals('X', True) then
226-
btn.QuantityUpText := 'Other'
212+
Result[i].QuantityUpText := 'Other'
227213
else
228-
btn.QuantityUpText := quantityStr;
229-
230-
Result[i] := btn;
214+
Result[i].QuantityUpText := quantityStr;
231215
end;
232216
end;
233217

234-
(*
235-
### ERSMakeQuantity.String2Quantity
236-
```pascal
237-
function ERSMakeQuantity.String2Quantity(quantity: String): ERSMakeQuantity; static;
238-
```
239-
Internal helper function to convert a string quantity into a ERSMakeQuantity.
240-
241-
Example:
242-
```pascal
243-
WriteLn ERSMakeQuantity.String2Quantity('5');
244-
WriteLn ERSMakeQuantity.String2Quantity('All');
245-
```
246-
*)
247-
248-
function ERSMakeQuantity.String2Quantity(quantity: String): ERSMakeQuantity; static;
249-
begin
250-
case quantity of
251-
'1' : Result := ERSMakeQuantity.ONE;
252-
'5' : Result := ERSMakeQuantity.FIVE;
253-
'10' : Result := ERSMakeQuantity.TEN;
254-
'All': Result := ERSMakeQuantity.ALL;
255-
'X' : Result := ERSMakeQuantity.X;
256-
else Result := ERSMakeQuantity.CUSTOM;
257-
end;
258-
end;
259218

260219
(*
261220
## Make.FindDynamicQuantityButtons

0 commit comments

Comments
 (0)