⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 functionconfig.pas

📁 飘飘M2 本人更新加入英雄系统 修正BUG 全套的源码上传 不看要后悔啊!
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    end else begin
      ButtonDisallowDeal.Caption := '允许交易';
      boButtonDeal := True;
    end;
    if not boCanStorage then begin
      ButtonDisallowStorage.Caption := '禁止存';
      boButtonStorage := False;
    end else begin
      ButtonDisallowStorage.Caption := '允许存';
      boButtonStorage := True;
    end;
    if not boCanRepair then begin
      ButtonDisallowRepair.Caption := '禁止修理';
      boButtonRepair := False;
    end else begin
      ButtonDisallowRepair.Caption := '允许修理';
      boButtonRepair := True;
    end;
  except
    ButtonDisallowDrop.Enabled := False;
    ButtonDisallowDeal.Enabled := False;
    ButtonDisallowStorage.Enabled := False;
    ButtonDisallowRepair.Enabled := False;
    ButtonDisallowDel.Enabled := False;
  end;
end;

procedure TFrmFunctionConfig.ButtonDisallowDropClick(Sender: TObject);
var
  ListItem: TListItem;
begin
  try
    ListItem := ListViewDisallow.Items.Item[ListViewDisallow.ItemIndex];
    if boButtonDrop then begin
      ListItem.SubItems.Strings[0] := '0';
      boButtonDrop := False;
      ButtonDisallowDrop.Caption := '禁止仍';
    end else begin
      ListItem.SubItems.Strings[0] := '1';
      boButtonDrop := True;
      ButtonDisallowDrop.Caption := '允许仍';
    end;
  except
  end;
end;

procedure TFrmFunctionConfig.ButtonDisallowDealClick(Sender: TObject);
var
  ListItem: TListItem;
begin
  try
    ListItem := ListViewDisallow.Items.Item[ListViewDisallow.ItemIndex];
    if boButtonDeal then begin
      ListItem.SubItems.Strings[1] := '0';
      boButtonDeal := False;
      ButtonDisallowDeal.Caption := '禁止交易';
    end else begin
      ListItem.SubItems.Strings[1] := '1';
      boButtonDeal := True;
      ButtonDisallowDeal.Caption := '允许交易';
    end;
  except
  end;
end;

procedure TFrmFunctionConfig.ButtonDisallowStorageClick(Sender: TObject);
var
  ListItem: TListItem;
begin
  try
    ListItem := ListViewDisallow.Items.Item[ListViewDisallow.ItemIndex];
    if boButtonStorage then begin
      ListItem.SubItems.Strings[2] := '0';
      boButtonStorage := False;
      ButtonDisallowStorage.Caption := '禁止存';
    end else begin
      ListItem.SubItems.Strings[2] := '1';
      boButtonStorage := True;
      ButtonDisallowStorage.Caption := '允许存';
    end;
  except
  end;
end;

procedure TFrmFunctionConfig.ButtonDisallowRepairClick(Sender: TObject);
var
  ListItem: TListItem;
begin
  try
    ListItem := ListViewDisallow.Items.Item[ListViewDisallow.ItemIndex];
    if boButtonRepair then begin
      ListItem.SubItems.Strings[3] := '0';
      boButtonRepair := False;
      ButtonDisallowRepair.Caption := '禁止修理';
    end else begin
      ListItem.SubItems.Strings[3] := '1';
      boButtonRepair := True;
      ButtonDisallowRepair.Caption := '允许修理';
    end;
  except
  end;
end;

procedure TFrmFunctionConfig.ButtonDisallowDelClick(Sender: TObject);
begin
  try
    ListViewDisallow.DeleteSelected;
  except
  end;
end;

procedure TFrmFunctionConfig.RefLoadDisallowStdItems();
var
  I: Integer;
  ListItem: TListItem;
  CheckItem: pTCheckItem;
  sItemName: string;
  sCanDrop: string;
  sCanDeal: string;
  sCanStorage: string;
  sCanRepair: string;
begin
  ListViewDisallow.Items.Clear;
  for I := 0 to g_CheckItemList.Count - 1 do begin
    CheckItem := pTCheckItem(g_CheckItemList.Items[I]);
    sItemName := CheckItem.szItemName;
    sCanDrop := IntToStr(Integer(CheckItem.boCanDrop));
    sCanDeal := IntToStr(Integer(CheckItem.boCanDeal));
    sCanStorage := IntToStr(Integer(CheckItem.boCanStorage));
    sCanRepair := IntToStr(Integer(CheckItem.boCanRepair));
    ListViewDisallow.Items.BeginUpdate;
    try
      ListItem := ListViewDisallow.Items.Add;
      ListItem.Caption := sItemName;
      ListItem.SubItems.Add(sCanDrop);
      ListItem.SubItems.Add(sCanDeal);
      ListItem.SubItems.Add(sCanStorage);
      ListItem.SubItems.Add(sCanRepair);
    finally
      ListViewDisallow.Items.EndUpdate;
    end;
  end;
end;

procedure TFrmFunctionConfig.ButtonDisallowSaveClick(Sender: TObject);
var
  I: Integer;
  ListItem: TListItem;
  SaveList: Classes.TStringList;
  sFileName: string;
  sLineText: string;
  sItemName: string;
  sCanDrop: string;
  sCanDeal: string;
  sCanStorage: string;
  sCanRepair: string;
begin
  ButtonDisallowSave.Enabled := False;
  sFileName := '.\CheckItemList.txt';
  SaveList := Classes.TStringList.Create;
  SaveList.Add(';引擎插件禁止物品配置文件');
  SaveList.Add(';物品名称'#9'扔'#9'交易'#9'存'#9'修');
  ListViewDisallow.Items.BeginUpdate;
  try
    for I := 0 to ListViewDisallow.Items.Count - 1 do begin
      ListItem := ListViewDisallow.Items.Item[I];
      sItemName := ListItem.Caption;
      sCanDrop := ListItem.SubItems.Strings[0];
      sCanDeal := ListItem.SubItems.Strings[1];
      sCanStorage := ListItem.SubItems.Strings[2];
      sCanRepair := ListItem.SubItems.Strings[3];
      sLineText := sItemName + #9 + sCanDrop + #9 + sCanDeal + #9 + sCanStorage + #9 + sCanRepair;
      SaveList.Add(sLineText);
    end;
  finally
    ListViewDisallow.Items.EndUpdate;
  end;
  SaveList.SaveToFile(sFileName);
  SaveList.Free;
  Application.MessageBox('保存完成!!!', '提示信息', MB_ICONQUESTION);
  ButtonDisallowSave.Enabled := True;
end;

procedure TFrmFunctionConfig.ButtonLoadCheckItemListClick(Sender: TObject);
begin
  LoadCheckItemList();
  RefLoadDisallowStdItems();
  Application.MessageBox('重新加载禁止物品配置完成!!!', '提示信息', MB_ICONQUESTION);
end;

procedure TFrmFunctionConfig.RefLoadMsgFilterList();
var
  I: Integer;
  ListItem: TListItem;
  FilterMsg: pTFilterMsg;
begin
  ListViewMsgFilter.Items.BeginUpdate;
  ListViewMsgFilter.Items.Clear;
  try
    for I := 0 to g_MsgFilterList.Count - 1 do begin
      ListItem := ListViewMsgFilter.Items.Add;
      FilterMsg := g_MsgFilterList.Items[I];
      ListItem.Caption := FilterMsg.sFilterMsg;
      ListItem.SubItems.Add(FilterMsg.sNewMsg);
    end;
  finally
    ListViewMsgFilter.Items.EndUpdate;
  end;
end;

procedure TFrmFunctionConfig.ListViewMsgFilterClick(Sender: TObject);
var
  ListItem: TListItem;
begin
  try
    ListItem := ListViewMsgFilter.Items.Item[ListViewMsgFilter.ItemIndex];
    EditFilterMsg.Text := ListItem.Caption;
    EditNewMsg.Text := ListItem.SubItems.Strings[0];
    ButtonMsgFilterDel.Enabled := True;
    ButtonMsgFilterChg.Enabled := True;
  except
    EditFilterMsg.Text := '';
    EditNewMsg.Text := '';
    ButtonMsgFilterDel.Enabled := False;
    ButtonMsgFilterChg.Enabled := False;
  end;
end;

procedure TFrmFunctionConfig.ButtonLoadMsgFilterListClick(Sender: TObject);
begin
  LoadMsgFilterList();
  RefLoadMsgFilterList();
  Application.MessageBox('重新加载消息过滤列表完成!!!', '提示信息', MB_ICONQUESTION);
end;

procedure TFrmFunctionConfig.ButtonMsgFilterSaveClick(Sender: TObject);
var
  I: Integer;
  ListItem: TListItem;
  SaveList: Classes.TStringList;
  sFilterMsg: string;
  sNewMsg: string;
  sFileName: string;
begin
  ButtonMsgFilterSave.Enabled := False;
  sFileName := '.\MsgFilterList.txt';
  SaveList := Classes.TStringList.Create;
  SaveList.Add(';引擎插件消息过滤配置文件');
  SaveList.Add(';过滤消息'#9'替换消息');
  ListViewMsgFilter.Items.BeginUpdate;
  try
    for I := 0 to ListViewMsgFilter.Items.Count - 1 do begin
      ListItem := ListViewMsgFilter.Items.Item[I];
      sFilterMsg := ListItem.Caption;
      sNewMsg := ListItem.SubItems.Strings[0];
      SaveList.Add(sFilterMsg + #9 + sNewMsg);
    end;
  finally
    ListViewMsgFilter.Items.EndUpdate;
  end;
  SaveList.SaveToFile(sFileName);
  SaveList.Free;
  Application.MessageBox('保存完成!!!', '提示信息', MB_ICONQUESTION);
  ButtonMsgFilterSave.Enabled := True;
end;

function TFrmFunctionConfig.InFilterMsgList(sFilterMsg: string): Boolean;
var
  I: Integer;
  ListItem: TListItem;
begin
  Result := False;
  try
    for I := 0 to ListViewMsgFilter.Items.Count - 1 do begin
      ListItem := ListViewMsgFilter.Items.Item[I];
      if CompareText(sFilterMsg, ListItem.Caption) = 0 then begin
        Result:=TRUE;
        Break;
      end;
    end;
  finally
    ListViewMsgFilter.Items.EndUpdate;
  end;
end;

procedure TFrmFunctionConfig.ButtonMsgFilterAddClick(Sender: TObject);
var
  sFilterMsg: string;
  sNewMsg: string;
  ListItem: TListItem;
begin
  sFilterMsg := Trim(EditFilterMsg.Text);
  sNewMsg := Trim(EditNewMsg.Text);
  if sFilterMsg = '' then begin
    Application.MessageBox('请输入过滤消息!!!', '提示信息', MB_ICONQUESTION);
    Exit;
  end;
  if InFilterMsgList(sFilterMsg) then begin
    Application.MessageBox('你输入的过滤消息已经存在!!!', '提示信息', MB_ICONQUESTION);
    Exit;
  end;
  ListViewMsgFilter.Items.BeginUpdate;
  try
    ListItem := ListViewMsgFilter.Items.Add;
    ListItem.Caption := sFilterMsg;
    ListItem.SubItems.Add(sNewMsg);
  finally
    ListViewMsgFilter.Items.EndUpdate;
  end;
end;

procedure TFrmFunctionConfig.ButtonMsgFilterChgClick(Sender: TObject);
var
  sFilterMsg: string;
  sNewMsg: string;
  ListItem: TListItem;
begin
  sFilterMsg := Trim(EditFilterMsg.Text);
  sNewMsg := Trim(EditNewMsg.Text);
  if sFilterMsg = '' then begin
    Application.MessageBox('请输入过滤消息!!!', '提示信息', MB_ICONQUESTION);
    Exit;
  end;
  if InFilterMsgList(sFilterMsg) then begin
    Application.MessageBox('你输入的过滤消息已经存在!!!', '提示信息', MB_ICONQUESTION);
    Exit;
  end;
  ListViewMsgFilter.Items.BeginUpdate;
  try
    ListItem := ListViewMsgFilter.Items.Item[ListViewMsgFilter.ItemIndex];
    ListItem.Caption := sFilterMsg;
    ListItem.SubItems.Strings[0] := sNewMsg;
  finally
    ListViewMsgFilter.Items.EndUpdate;
  end;
end;

procedure TFrmFunctionConfig.ButtonMsgFilterDelClick(Sender: TObject);
begin
  try
    ListViewMsgFilter.DeleteSelected;
  except
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -