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

📄 viewlist.pas

📁 乐都SQL版传奇全套代码,绝对可编译
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  nNoDropCount := EditNoDropCount.Value;
  nCLearTime := EditClearTime.Value;

  nSelIndex := StringGridMonDropLimit.Row - 1;
  if nSelIndex < 0 then
    exit;
  g_MonDropLimitLIst.Lock;
  try
    if nSelIndex >= g_MonDropLimitLIst.Count then
      exit;
    MonDrop := pTMonDrop(g_MonDropLimitLIst.Objects[nSelIndex]);
    MonDrop.sItemName := sItemName;
    MonDrop.nDropCount := nDropCount;
    MonDrop.nNoDropCount := nNoDropCount;
    MonDrop.nCountLimit := nDropLimit;
    MonDrop.ClearTime := nCLearTime;
  finally
    g_MonDropLimitLIst.UnLock;
  end;
  SaveMonDropLimitList();
  RefMonDropLimit();
end;

procedure TfrmViewList.ButtonMonDropLimitAddClick(Sender: TObject);
var
  i                                     : Integer;
  sItemName                             : string;
  nNoDropCount                          : Integer;
  nDropCount                            : Integer;
  nDropLimit                            : Integer;
  nCLearTime                            : Integer;
  MonDrop                               : pTMonDrop;
begin
  sItemName := Trim(EditItemName.Text);
  nDropCount := EditDropCount.Value;
  nDropLimit := EditCountLimit.Value;
  nNoDropCount := EditNoDropCount.Value;
  nCLearTime := EditClearTime.Value;

  g_MonDropLimitLIst.Lock;
  try
    for i := 0 to g_MonDropLimitLIst.Count - 1 do
    begin
      MonDrop := pTMonDrop(g_MonDropLimitLIst.Objects[i]);
      if CompareText(MonDrop.sItemName, sItemName) = 0 then
      begin
        Application.MessageBox('输入的物品名已经在列表中!!!', '提示信息',
          MB_OK + MB_ICONERROR);
        exit;
      end;
    end;
    New(MonDrop);
    MonDrop.sItemName := sItemName;
    MonDrop.nDropCount := nDropCount;
    MonDrop.nNoDropCount := nNoDropCount;
    MonDrop.nCountLimit := nDropLimit;
    MonDrop.ClearTime := nCLearTime;
    g_MonDropLimitLIst.AddObject(sItemName, TObject(MonDrop));
  finally
    g_MonDropLimitLIst.UnLock;
  end;
  SaveMonDropLimitList();
  RefMonDropLimit();
end;


procedure TfrmViewList.ButtonMonDropLimitDelClick(Sender: TObject);
var
  nSelIndex                             : Integer;
  MonDrop                               : pTMonDrop;
begin

  nSelIndex := StringGridMonDropLimit.Row - 1;
  if nSelIndex < 0 then
    exit;
  g_MonDropLimitLIst.Lock;
  try
    if nSelIndex >= g_MonDropLimitLIst.Count then
      exit;
    MonDrop := pTMonDrop(g_MonDropLimitLIst.Objects[nSelIndex]);
    DisPose(MonDrop);
    g_MonDropLimitLIst.Delete(nSelIndex);
  finally
    g_MonDropLimitLIst.UnLock;
  end;
  SaveMonDropLimitList();
  RefMonDropLimit();
end;

procedure TfrmViewList.ListBoxGameLogListClick(Sender: TObject);
begin
  if not boOpened then
    exit;
  if ListBoxGameLogList.ItemIndex >= 0 then
    ButtonGameLogDel.Enabled := True;
end;

procedure TfrmViewList.ListBoxitemList2Click(Sender: TObject);
begin
  if not boOpened then
    exit;
  if ListBoxitemList2.ItemIndex >= 0 then
    ButtonGameLogAdd.Enabled := True;
end;

procedure TfrmViewList.ButtonGameLogAddClick(Sender: TObject);
var
  i                                     : Integer;
begin
  if ListBoxitemList2.ItemIndex >= 0 then
  begin
    for i := 0 to ListBoxGameLogList.Items.Count - 1 do
    begin
      if ListBoxGameLogList.Items.Strings[i] =
        ListBoxitemList2.Items.Strings[ListBoxitemList2.ItemIndex] then
      begin
        Application.MessageBox('此物品已在列表中!!!', '错误信息', MB_OK +
          MB_ICONERROR);
        exit;
      end;
    end;
    ListBoxGameLogList.Items.Add(ListBoxitemList2.Items.Strings[ListBoxitemList2.ItemIndex]);
    ModValue();
  end;
end;

procedure TfrmViewList.ButtonGameLogDelClick(Sender: TObject);
begin
  if ListBoxGameLogList.ItemIndex >= 0 then
  begin
    ListBoxGameLogList.Items.Delete(ListBoxGameLogList.ItemIndex);
    ModValue();
  end;
  if ListBoxGameLogList.ItemIndex < 0 then
    ButtonGameLogDel.Enabled := False;
end;

procedure TfrmViewList.ButtonGameLogAddAllClick(Sender: TObject);
var
  i                                     : Integer;
begin
  ListBoxGameLogList.Items.Clear;
  for i := 0 to ListBoxitemList2.Items.Count - 1 do
  begin
    ListBoxGameLogList.Items.Add(ListBoxitemList2.Items.Strings[i]);
  end;
  ModValue();
end;

procedure TfrmViewList.ButtonGameLogDelAllClick(Sender: TObject);
begin
  ListBoxGameLogList.Items.Clear;
  ButtonGameLogDel.Enabled := False;
  ModValue();
end;

procedure TfrmViewList.ButtonGameLogSaveClick(Sender: TObject);
var
  i                                     : Integer;
begin

  g_GameLogItemNameList.Lock;
  try
    g_GameLogItemNameList.Clear;
    for i := 0 to ListBoxGameLogList.Items.Count - 1 do
    begin
      g_GameLogItemNameList.Add(ListBoxGameLogList.Items.Strings[i])
    end;
  finally
    g_GameLogItemNameList.UnLock;
  end;
  uModValue();
{$IF SoftVersion <> VERDEMO}
  SaveGameLogItemNameList();
{$IFEND}
  if
    Application.MessageBox('此设置必须重新加载物品数据库才能生效,是否重新加载?',
    '确认信息', MB_YESNO + MB_ICONQUESTION) = mrYes then
  begin
    FrmDB.LoadItemsDB();
  end;
end;

procedure TfrmViewList.ButtonDisableTakeOffAddClick(Sender: TObject);
var
  i                                     : Integer;
begin
  if ListBoxitemList3.ItemIndex >= 0 then
  begin
    for i := 0 to ListBoxDisableTakeOffList.Items.Count - 1 do
    begin
      if ListBoxDisableTakeOffList.Items.Strings[i] =
        ListBoxitemList3.Items.Strings[ListBoxitemList3.ItemIndex] then
      begin
        Application.MessageBox('此物品已在列表中!!!', '错误信息', MB_OK +
          MB_ICONERROR);
        exit;
      end;
    end;
    ListBoxDisableTakeOffList.Items.AddObject(IntToStr(ListBoxitemList3.ItemIndex) +
      '  ' + ListBoxitemList3.Items.Strings[ListBoxitemList3.ItemIndex],
      TObject(ListBoxitemList3.ItemIndex));
    ModValue();
  end;
end;

procedure TfrmViewList.ButtonDisableTakeOffDelClick(Sender: TObject);
begin
  if ListBoxDisableTakeOffList.ItemIndex >= 0 then
  begin
    ListBoxDisableTakeOffList.Items.Delete(ListBoxDisableTakeOffList.ItemIndex);
    ModValue();
  end;
  if ListBoxDisableTakeOffList.ItemIndex < 0 then
    ButtonDisableTakeOffDel.Enabled := False;
end;

procedure TfrmViewList.ListBoxDisableTakeOffListClick(Sender: TObject);
begin
  if not boOpened then
    exit;
  if ListBoxDisableTakeOffList.ItemIndex >= 0 then
    ButtonDisableTakeOffDel.Enabled := True;
end;

procedure TfrmViewList.ListBoxitemList3Click(Sender: TObject);
begin
  if not boOpened then
    exit;
  if ListBoxitemList3.ItemIndex >= 0 then
    ButtonDisableTakeOffAdd.Enabled := True;
end;

procedure TfrmViewList.ButtonDisableTakeOffAddAllClick(Sender: TObject);
var
  i                                     : Integer;
begin
  ListBoxDisableTakeOffList.Items.Clear;
  for i := 0 to ListBoxitemList3.Items.Count - 1 do
  begin
    ListBoxDisableTakeOffList.Items.AddObject(IntToStr(i) + '  ' +
      ListBoxitemList3.Items.Strings[i], TObject(i));
  end;
  ModValue();
end;

procedure TfrmViewList.ButtonDisableTakeOffDelAllClick(Sender: TObject);
begin
  ListBoxDisableTakeOffList.Items.Clear;
  ButtonDisableTakeOffDel.Enabled := False;
  ModValue();
end;

procedure TfrmViewList.ButtonDisableTakeOffSaveClick(Sender: TObject);
var
  i                                     : Integer;
  sItemIdx                              : string;
begin
  g_DisableTakeOffList.Lock;
  try
    g_DisableTakeOffList.Clear;
    for i := 0 to ListBoxDisableTakeOffList.Items.Count - 1 do
    begin
      g_DisableTakeOffList.AddObject(Trim(GetValidStr3(ListBoxDisableTakeOffList.Items.Strings[i], sItemIdx, [' ', '/', ',', #9])),
        ListBoxDisableTakeOffList.Items.Objects[i]);
    end;
  finally
    g_DisableTakeOffList.UnLock;
  end;
  SaveDisableTakeOffList();
  uModValue();
end;

procedure TfrmViewList.RefAdminList();
var
  i                                     : Integer;
  AdminInfo                             : pTAdminInfo;
begin
  ListBoxAdminList.Clear;
  EditAdminName.Text := '';
  //CbxAdmin.Items.Clear;
  //for i:=0 to DateCount-1 do
 // CbxAdmin.Items.Add(Dateconfig[i].CharName);
  EditAdminPremission.Value := 0;
  ButtonAdminListChange.Enabled := False;
  ButtonAdminListDel.Enabled := False;
  UserEngine.m_AdminList.Lock;
  try
    for i := 0 to UserEngine.m_AdminList.Count - 1 do
    begin
      AdminInfo := pTAdminInfo(UserEngine.m_AdminList.Items[i]);
      ListBoxAdminList.Items.Add( AdminInfo.sChrName + ' - ' +
        IntToStr(AdminInfo.nLv))

    end;
  finally
    UserEngine.m_AdminList.UnLock;
  end;
end;

procedure TfrmViewList.RefNoClearMonList;
var
  MonInfo                               : pTMonInfo;
  i                                     : Integer;
begin
  EnterCriticalSection(ProcessHumanCriticalSection);
  try
    for i := 0 to UserEngine.MonsterList.Count - 1 do
    begin
      MonInfo := UserEngine.MonsterList.Items[i];
      ListBoxMonList.Items.AddObject(MonInfo.sName, TObject(MonInfo));
    end;
  finally
    LeaveCriticalSection(ProcessHumanCriticalSection);
  end;

  g_NoClearMonList.Lock;
  try
    for i := 0 to g_NoClearMonList.Count - 1 do
    begin
      ListBoxNoClearMonList.Items.Add(g_NoClearMonList.Strings[i]);
    end;
  finally
    g_NoClearMonList.UnLock;
  end;
end;

procedure TfrmViewList.ButtonNoClearMonAddClick(Sender: TObject);
var
  i                                     : Integer;
begin
  if ListBoxMonList.ItemIndex >= 0 then
  begin
    for i := 0 to ListBoxNoClearMonList.Items.Count - 1 do
    begin
      if ListBoxNoClearMonList.Items.Strings[i] =
        ListBoxMonList.Items.Strings[ListBoxMonList.ItemIndex] then
      begin
        Application.MessageBox('此物品已在列表中!!!', '错误信息', MB_OK +
          MB_ICONERROR);
        exit;
      end;
    end;
    ListBoxNoClearMonList.Items.Add(ListBoxMonList.Items.Strings[ListBoxMonList.ItemIndex]);
    ModValue();
  end;
end;

procedure TfrmViewList.ButtonNoClearMonDelClick(Sender: TObject);
begin
  if ListBoxNoClearMonList.ItemIndex >= 0 then
  begin
    ListBoxNoClearMonList.Items.Delete(ListBoxNoClearMonList.ItemIndex);
    ModValue();
  end;
  if ListBoxNoClearMonList.ItemIndex < 0 then
    ButtonNoClearMonDel.Enabled := False;
end;

procedure TfrmViewList.ButtonNoClearMonAddAllClick(Sender: TObject);
var
  i                                     : Integer;
begin
  ListBoxNoClearMonList.Items.Clear;
  for i := 0 to ListBoxMonList.Items.Count - 1 do
  begin
    ListBoxNoClearMonList.Items.Add(ListBoxMonList.Items.Strings[i]);
  end;
  ModValue();
end;

procedure TfrmViewList.ButtonNoClearMonDelAllClick(Sender: TObject);
begin
  ListBoxNoClearMonList.Items.Clear;
  ButtonNoClearMonDel.Enabled := False;
  ModValue();
end;

procedure TfrmViewList.ButtonNoClearMonSaveClick(Sender: TObject);
var
  i                                     : Integer;
begin
  g_NoClearMonList.Lock;
  try
    g_NoClearMonList.Clear;
    for i := 0 to ListBoxNoClearMonList.Items.Count - 1 do
    begin
      g_NoClearMonList.Add(ListBoxNoClearMonList.Items.Strings[i]);
    end;
  finally
    g_NoClearMonList.UnLock;
  end;
  SaveNoClearMonList();
  uModValue();
end;

procedure TfrmViewList.ListBoxNoClearMonListClick(Sender: TObject);
begin
  if not boOpened then
    exit;
  if ListBoxNoClearMonList.ItemIndex >= 0 then
    ButtonNoClearMonDel.Enabled := True;
end;

procedure TfrmViewList.ListBoxMonListClick(Sender: TObject);
begin
  if not boOpened then
    exit;
  if ListBoxMonList.ItemIndex >= 0 then
    ButtonNoClearMonAdd.Enabled := True;
end;

procedure TfrmViewList.ButtonAdminLitsSaveClick(Sender: TObject);
begin
  SaveAdminList();
  ButtonAdminLitsSave.Enabled := False;
end;

procedure TfrmViewList.ListBoxAdminListClick(Sender: TObject);
var
  nIndex                                : Integer;
  AdminInfo                             : pTAdminInfo;

⌨️ 快捷键说明

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