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

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