добавил обработку наград

This commit is contained in:
PC1\PTyTb
2025-08-17 09:16:47 +03:00
parent f71b621821
commit 597c49f67c
3 changed files with 130 additions and 40 deletions
+36 -22
View File
@@ -18,7 +18,7 @@ object TTW_Bot: TTTW_Bot
Size.Width = 1003.000000000000000000
Size.Height = 744.000000000000000000
Size.PlatformDefault = False
TabIndex = 2
TabIndex = 3
TabOrder = 0
TabPosition = PlatformDefault
Sizes = (
@@ -189,7 +189,7 @@ object TTW_Bot: TTTW_Bot
item
end>
TextSettings.Trimming = None
IsSelected = True
IsSelected = False
ImageIndex = 13
Size.Width = 78.000000000000000000
Size.Height = 26.000000000000000000
@@ -205,8 +205,8 @@ object TTW_Bot: TTTW_Bot
Size.Height = 718.000000000000000000
Size.PlatformDefault = False
inherited sgCommands: TStringGrid
Viewport.Width = 540.000000000000000000
Viewport.Height = 193.000000000000000000
Viewport.Width = 536.000000000000000000
Viewport.Height = 168.000000000000000000
inherited scCommand: TStringColumn
Size.Width = 134.000000000000000000
end
@@ -218,43 +218,53 @@ object TTW_Bot: TTTW_Bot
inherited frContruct1: TfrContruct
inherited mResponse: TMemo
Size.Width = 384.000000000000000000
Viewport.Width = 384.000000000000000000
Viewport.Height = 161.000000000000000000
Viewport.Width = 380.000000000000000000
Viewport.Height = 157.000000000000000000
end
inherited GroupBox7: TGroupBox
inherited btnAddUserName: TButton
Images = ImageList1
ImageIndex = 11
TabOrder = 38
end
inherited btnGetDateFollow: TButton
Images = ImageList1
ImageIndex = 15
TabOrder = 39
end
inherited btnGetAgeAccaunt: TButton
Images = ImageList1
ImageIndex = 15
TabOrder = 40
end
inherited btnCounterAddtoText: TButton
Images = ImageList1
ImageIndex = 23
TabOrder = 41
end
inherited cbCounterName: TComboBox
TabOrder = 42
end
inherited btnGPT: TButton
Images = ImageList1
ImageIndex = 19
TabOrder = 43
end
inherited btnRandomUserName: TButton
Images = ImageList1
ImageIndex = 11
TabOrder = 44
end
inherited btnGetChannelStat: TButton
Images = ImageList1
ImageIndex = 22
Size.Width = 136.000000000000000000
TabOrder = 45
end
inherited btnAIPic: TButton
Images = ImageList1
ImageIndex = 5
TabOrder = 47
TabOrder = 48
end
end
inherited btnAddCommand: TButton
@@ -316,8 +326,8 @@ object TTW_Bot: TTTW_Bot
end
inherited sgRandomInt: TStringGrid
TabOrder = 35
Viewport.Width = 157.000000000000000000
Viewport.Height = 144.000000000000000000
Viewport.Width = 153.000000000000000000
Viewport.Height = 119.000000000000000000
inherited scRIntName: TStringColumn
Size.Width = 70.000000000000000000
end
@@ -333,8 +343,8 @@ object TTW_Bot: TTTW_Bot
Margins.Top = 200.000000000000000000
inherited frsgSounds: TfrSimpleGrid
inherited sg: TStringGrid
Viewport.Width = 293.000000000000000000
Viewport.Height = 149.000000000000000000
Viewport.Width = 289.000000000000000000
Viewport.Height = 124.000000000000000000
inherited sgR2: TStringColumn
Size.Width = 170.000000000000000000
end
@@ -362,8 +372,8 @@ object TTW_Bot: TTTW_Bot
inherited GroupBox24: TGroupBox
inherited frsgFiles: TfrSimpleGrid
inherited sg: TStringGrid
Viewport.Width = 293.000000000000000000
Viewport.Height = 149.000000000000000000
Viewport.Width = 289.000000000000000000
Viewport.Height = 124.000000000000000000
inherited sgR2: TStringColumn
Size.Width = 170.000000000000000000
end
@@ -396,8 +406,8 @@ object TTW_Bot: TTTW_Bot
TabOrder = 7
inherited frsgNeiro: TfrSimpleGrid
inherited sg: TStringGrid
Viewport.Width = 293.000000000000000000
Viewport.Height = 149.000000000000000000
Viewport.Width = 289.000000000000000000
Viewport.Height = 124.000000000000000000
inherited sgR2: TStringColumn
Size.Width = 170.000000000000000000
end
@@ -424,7 +434,7 @@ object TTW_Bot: TTTW_Bot
item
end>
TextSettings.Trimming = None
IsSelected = False
IsSelected = True
ImageIndex = 20
Size.Width = 79.000000000000000000
Size.Height = 26.000000000000000000
@@ -481,8 +491,8 @@ object TTW_Bot: TTTW_Bot
Size.PlatformDefault = False
inherited sgEvents: TStringGrid
Size.Width = 721.000000000000000000
Viewport.Width = 721.000000000000000000
Viewport.Height = 211.000000000000000000
Viewport.Width = 717.000000000000000000
Viewport.Height = 186.000000000000000000
inherited StringColumn1: TStringColumn
Size.Width = 150.000000000000000000
end
@@ -531,8 +541,8 @@ object TTW_Bot: TTTW_Bot
inherited StringGrid1: TStringGrid
Size.Width = 605.000000000000000000
Size.Height = 153.000000000000000000
Viewport.Width = 605.000000000000000000
Viewport.Height = 153.000000000000000000
Viewport.Width = 585.000000000000000000
Viewport.Height = 128.000000000000000000
inherited StringColumn1: TStringColumn
Size.Width = 241.000000000000000000
end
@@ -556,9 +566,13 @@ object TTW_Bot: TTTW_Bot
TabOrder = 9
end
inherited btnAddCustomRewards: TButton
Images = ImageList1
ImageIndex = 0
TabOrder = 13
end
inherited btnDelCustomRewards: TButton
Images = ImageList1
ImageIndex = 12
TabOrder = 16
end
end
@@ -587,8 +601,8 @@ object TTW_Bot: TTTW_Bot
inherited sgWebChats: TStringGrid
Size.Width = 1003.000000000000000000
Size.Height = 282.000000000000000000
Viewport.Width = 1003.000000000000000000
Viewport.Height = 282.000000000000000000
Viewport.Width = 999.000000000000000000
Viewport.Height = 257.000000000000000000
inherited StringColumn2: TStringColumn
Size.Width = 200.000000000000000000
end
+23 -10
View File
@@ -17,8 +17,10 @@ object frRevards: TfrRevards
Size.Height = 196.000000000000000000
Size.PlatformDefault = False
TabOrder = 1
Viewport.Width = 613.000000000000000000
Viewport.Height = 196.000000000000000000
RowCount = 0
OnCellClick = StringGrid1CellClick
Viewport.Width = 609.000000000000000000
Viewport.Height = 171.000000000000000000
object StringColumn1: TStringColumn
Header = #1053#1072#1079#1074#1072#1085#1080#1077
HeaderSettings.TextSettings.WordWrap = False
@@ -43,11 +45,11 @@ object frRevards: TfrRevards
Position.Y = 8.000000000000000000
TextSettings.Trimming = None
Text = #1053#1072#1079#1074#1072#1085#1080#1077
TabOrder = 4
TabOrder = 3
end
object ceCustomRevardTitle: TComboEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
TabOrder = 5
TabOrder = 4
ItemHeight = 19.000000000000000000
ItemIndex = -1
Position.X = 8.000000000000000000
@@ -58,7 +60,7 @@ object frRevards: TfrRevards
end
object edtCustomRevardPrompt: TEdit
Touch.InteractiveGestures = [LongTap, DoubleTap]
TabOrder = 9
TabOrder = 8
Position.X = 198.000000000000000000
Position.Y = 33.000000000000000000
Size.Width = 348.000000000000000000
@@ -93,17 +95,28 @@ object frRevards: TfrRevards
TabOrder = 10
end
object btnAddCustomRewards: TButton
Position.X = 95.000000000000000000
Position.Y = 88.000000000000000000
TabOrder = 16
Position.X = 262.000000000000000000
Position.Y = 63.000000000000000000
TabOrder = 15
Text = #1044#1086#1073#1072#1074#1080#1090#1100
TextSettings.Trimming = None
OnClick = btnAddCustomRewardsClick
end
object btnDelCustomRewards: TButton
Position.X = 183.000000000000000000
Position.Y = 88.000000000000000000
Position.X = 262.000000000000000000
Position.Y = 93.000000000000000000
TabOrder = 17
Text = #1059#1076#1072#1083#1080#1090#1100
TextSettings.Trimming = None
OnClick = btnDelCustomRewardsClick
end
object cbUserInput: TCheckBox
Position.X = 95.000000000000000000
Position.Y = 91.000000000000000000
Size.Width = 162.000000000000000000
Size.Height = 19.000000000000000000
Size.PlatformDefault = False
TabOrder = 18
Text = #1055#1086#1083#1100#1079#1086#1074#1072#1090#1077#1083#1100#1089#1082#1080#1081' '#1074#1074#1086#1076
end
end
+71 -8
View File
@@ -3,10 +3,14 @@ unit fRevards;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
System.SysUtils, System.Types, System.UITypes, System.Classes,
System.Variants,
FMX.Types, FMX.Graphics, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
System.Rtti, FMX.Grid.Style, FMX.Grid, FMX.ScrollBox, uRecords, System.Generics.Collections,
FMX.Controls.Presentation, FMX.EditBox, FMX.NumberBox, FMX.Edit, FMX.ComboEdit;
StrUtils,
System.Rtti, FMX.Grid.Style, FMX.Grid, FMX.ScrollBox, uRecords,
System.Generics.Collections,
FMX.Controls.Presentation, FMX.EditBox, FMX.NumberBox, FMX.Edit,
FMX.ComboEdit;
type
TfrRevards = class(TFrame)
@@ -24,13 +28,17 @@ type
Label2: TLabel;
btnDelCustomRewards: TButton;
btnAddCustomRewards: TButton;
cbUserInput: TCheckBox;
procedure StringGrid1CellClick(const Column: TColumn; const Row: Integer);
procedure btnDelCustomRewardsClick(Sender: TObject);
procedure btnAddCustomRewardsClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
CustomRewards: TList<TCustomRevards>;
listRevards:tarray<TReward>;
listRevards: tarray<TReward>;
procedure LoadCustomRevards;
procedure UpdateGrid;
end;
@@ -41,26 +49,81 @@ implementation
uses ugeneral;
procedure TfrRevards.btnAddCustomRewardsClick(Sender: TObject);
var
cr: TCustomRevards;
begin
cr := ttw_API.createCustomReward(ceCustomRevardTitle.Text,
inttostr(round(nbCustomRevardCost.Value)), edtCustomRevardPrompt.Text,
cbUserInput.IsChecked);
CustomRewards.Add(cr);
UpdateGrid;
end;
procedure TfrRevards.btnDelCustomRewardsClick(Sender: TObject);
var
cr: TCustomRevards;
RowIndex: Integer;
begin
RowIndex := StringGrid1.Row;
if (RowIndex < 0) or (RowIndex >= CustomRewards.Count) then
Exit;
for cr in CustomRewards do
begin
if cr.title = StringGrid1.Cells[0, RowIndex] then
begin
ttw_API.deleteCustomReward(cr.id);
CustomRewards.Delete(RowIndex);
Break;
end;
end;
UpdateGrid;
end;
procedure TfrRevards.LoadCustomRevards;
var
cr: TCustomRevards;
begin
CustomRewards.Clear;
TTW_Bot.frEvents1.cbRevards.Items.Clear;
ceCustomRevardTitle.items.Clear;
ceCustomRevardTitle.Items.Clear;
TTW_Bot.toLog('fRevards', 'LoadCustomRevards', 'Çàïðîñ íàãðàä ñ ñåðâåðà', 3);
ttw_API.getCustomReward(CustomRewards);
for cr in CustomRewards do
begin
TTW_Bot.frEvents1.cbRevards.Items.Add(cr.Title);
ceCustomRevardTitle.Items.Add(cr.Title);
TTW_Bot.frEvents1.cbRevards.Items.Add(cr.title);
ceCustomRevardTitle.Items.Add(cr.title);
end;
UpdateGrid;
end;
procedure TfrRevards.StringGrid1CellClick(const Column: TColumn;
const Row: Integer);
begin
ceCustomRevardTitle.ItemIndex := ceCustomRevardTitle.Items.IndexOf
(StringGrid1.Cells[0, Row]);
edtCustomRevardPrompt.Text := StringGrid1.Cells[2, Row];
cbUserInput.IsChecked := StringGrid1.Cells[1, Row] = 'Äà';
nbCustomRevardCost.Value := strtoint(StringGrid1.Cells[3, Row]);
end;
procedure TfrRevards.UpdateGrid;
var
cr: TCustomRevards;
i: Integer;
begin
StringGrid1.RowCount := 0;
for cr in CustomRewards do
begin
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cells[0, StringGrid1.RowCount - 1] := cr.title;
StringGrid1.Cells[1, StringGrid1.RowCount - 1] :=
ifthen(cr.is_user_input_required, 'Äà', 'Íåò');
StringGrid1.Cells[2, StringGrid1.RowCount - 1] := cr.promt;
StringGrid1.Cells[3, StringGrid1.RowCount - 1] := inttostr(cr.cost);
end;
end;
end.