📄 fstate.pas
字号:
DFrdClose.Top:=5;
DFrdPgUp.SetImgIndex(g_WMainImages, 373);
DFrdPgUp.Left:=259;
DFrdPgUp.Top:=102;
DFrdPgDn.SetImgIndex(g_WMainImages, 372);
DFrdPgDn.Left:=259;
DFrdPgDn.Top:=154;
DFrdFriend.SetImgIndex(g_WMainImages, 540);
DFrdFriend.Left:=15;
DFrdFriend.Top:=35;
DFrdBlackList.SetImgIndex(g_WMainImages, 573);
DFrdBlackList.Left:=130;
DFrdBlackList.Top:=35;
DFrdAdd.SetImgIndex(g_WMainImages, 554);
DFrdAdd.Left:=90;
DFrdAdd.Top:=233;
DFrdDel.SetImgIndex(g_WMainImages, 556);
DFrdDel.Left:=124;
DFrdDel.Top:=233;
DFrdMemo.SetImgIndex(g_WMainImages, 558);
DFrdMemo.Left:=158;
DFrdMemo.Top:=233;
DFrdMail.SetImgIndex(g_WMainImages, 560);
DFrdMail.Left:=192;
DFrdMail.Top:=233;
DFrdWhisper.SetImgIndex(g_WMainImages, 562);
DFrdWhisper.Left:=226;
DFrdWhisper.Top:=233;
d := g_WMainImages.Images[457];
if d <> nil then begin
DMailListDlg.SetImgIndex (g_WMainImages, 457);
DMailListDlg.Left := 512;
DMailListDlg.Top := 0;
end;
DMailListClose.SetImgIndex(g_WMainImages, 371);
DMailListClose.Left:=247;
DMailListClose.Top:=5;
DMailListPgUp.SetImgIndex(g_WMainImages, 373);
DMailListPgUp.Left:=259;
DMailListPgUp.Top:=102;
DMailListPgDn.SetImgIndex(g_WMainImages, 372);
DMailListPgDn.Left:=259;
DMailListPgDn.Top:=154;
DMLReply.SetImgIndex(g_WMainImages, 564);
DMLReply.Left:=90;
DMLReply.Top:=233;
DMLRead.SetImgIndex(g_WMainImages, 566);
DMLRead.Left:=124;
DMLRead.Top:=233;
DMLDel.SetImgIndex(g_WMainImages, 556);
DMLDel.Left:=158;
DMLDel.Top:=233;
DMLLock.SetImgIndex(g_WMainImages, 568);
DMLLock.Left:=192;
DMLLock.Top:=233;
DMLBlock.SetImgIndex(g_WMainImages, 570);
DMLBlock.Left:=226;
DMLBlock.Top:=233;
d := g_WMainImages.Images[458];
if d <> nil then begin
DBlockListDlg.SetImgIndex (g_WMainImages, 458);
DBlockListDlg.Left := 512;
DBlockListDlg.Top := 0;
end;
DBlockListClose.SetImgIndex(g_WMainImages, 371);
DBlockListClose.Left:=247;
DBlockListClose.Top:=5;
DBLPgUp.SetImgIndex(g_WMainImages, 373);
DBLPgUp.Left:=259;
DBLPgUp.Top:=102;
DBLPgDn.SetImgIndex(g_WMainImages, 372);
DBLPgDn.Left:=259;
DBLPgDn.Top:=154;
DBLAdd.SetImgIndex(g_WMainImages, 554);
DBLAdd.Left:=192;
DBLAdd.Top:=233;
DBLDel.SetImgIndex(g_WMainImages, 556);
DBLDel.Left:=226;
DBLDel.Top:=233;
d := g_WMainImages.Images[459];
if d <> nil then begin
DMemo.SetImgIndex (g_WMainImages, 459);
DMemo.Left := 290;
DMemo.Top := 0;
end;
DMemoClose.SetImgIndex(g_WMainImages, 371);
DMemoClose.Left:=205;
DMemoClose.Top:=1;
DMemoB1.SetImgIndex(g_WMainImages, 544);
DMemoB1.Left:=58;
DMemoB1.Top:=114;
DMemoB2.SetImgIndex(g_WMainImages, 538);
DMemoB2.Left:=126;
DMemoB2.Top:=114;
DButtonHP.Left := 40;
DButtonHP.Top := 91;
DButtonHP.Width := 45;
DButtonHP.Height := 90;
DButtonMP.Left := 40 + 47;
DButtonMP.Top := 91;
DButtonMP.Width := 45;
DButtonMP.Height := 90;
{
//背包物品窗口
DItemBag.SetImgIndex (g_WMain3Images, 6);
DItemBag.Left := 0;
DItemBag.Top := 0;
DItemGrid.Left := 29;
DItemGrid.Top := 41;
DItemGrid.Width := 286;
DItemGrid.Height := 162;
DClosebag.SetImgIndex (g_WMainImages, 372);
DClosebag.Downed:=True;
DCloseBag.Left := 336;
DCloseBag.Top := 59;
DCloseBag.Width := 14;
DCloseBag.Height := 20;
DGold.Left := 18;
DGold.Top := 218;
d := g_WMain3Images.Images[207]; //惑怕
if d <> nil then begin
DStateWin.SetImgIndex (g_WMain3Images, 207);
DStateWin.Left := SCREENWIDTH - d.Width;
DStateWin.Top := 0;
end;
}
end;
{------------------------------------------------------------------------}
//声音 窗口
procedure TFrmDlg.OpenSoundOption;
begin
g_boSound := not g_boSound;
if g_boSound then begin
DScreen.AddChatBoardString ('[音乐打开]',clWhite, clBlack);
end else begin
DScreen.AddChatBoardString ('[音乐关闭]',clWhite, clBlack);
end;
end;
//打开/关闭我的属性对话框
procedure TFrmDlg.OpenMyStatus;
begin
DStateWin.Visible := not DStateWin.Visible;
PageChanged;
end;
//显示玩家信息对话框
procedure TFrmDlg.OpenUserState (UserState: TUserStateInfo);
begin
UserState1 := UserState;
DUserState1.Visible := TRUE;
end;
//显示/关闭物品对话框
procedure TFrmDlg.OpenItemBag;
begin
DItemBag.Visible := not DItemBag.Visible;
if DItemBag.Visible then
ArrangeItemBag;
end;
//底部状态框
procedure TFrmDlg.ViewBottomBox (visible: Boolean);
begin
DBottom.Visible := visible;
end;
// 取消物品移动
procedure TFrmDlg.CancelItemMoving;
var
idx, n: integer;
begin
if g_boItemMoving then begin
g_boItemMoving := FALSE;
idx := g_MovingItem.Index;
if idx < 0 then begin
if (idx <= -20) and (idx > -30) then begin
AddDealItem (g_MovingItem.Item);
end else begin
n := -(idx+1);
if n in [0..12] then begin
g_UseItems[n] := g_MovingItem.Item;
end;
end;
end else
if idx in [0..MAXBAGITEM-1] then begin
if g_ItemArr[idx].S.Name = '' then begin
g_ItemArr[idx] := g_MovingItem.Item;
end else begin
AddItemBag (g_MovingItem.Item);
end;
end;
g_MovingItem.Item.S.Name := '';
end;
ArrangeItemBag;
end;
//把移动的物品放下
procedure TFrmDlg.DropMovingItem;
var
idx: integer;
begin
if g_boItemMoving then begin
g_boItemMoving := FALSE;
if g_MovingItem.Item.S.Name <> '' then begin
FrmMain.SendDropItem (g_MovingItem.Item.S.Name, g_MovingItem.Item.MakeIndex);
AddDropItem (g_MovingItem.Item);
g_MovingItem.Item.S.Name := '';
end;
end;
end;
//打开属性调整对话框
procedure TFrmDlg.OpenAdjustAbility;
begin
DAdjustAbility.Left := 0;
DAdjustAbility.Top := 0;
g_nSaveBonusPoint := g_nBonusPoint;
FillChar (g_BonusAbilChg, sizeof(TNakedAbility), #0);
DAdjustAbility.Visible := TRUE;
end;
procedure TFrmDlg.DBackgroundBackgroundClick(Sender: TObject);
var
dropgold: integer;
valstr: string;
begin
if g_boItemMoving then begin
DBackground.WantReturn := TRUE;
if g_MovingItem.Item.S.Name = g_sGoldName{'金币'} then begin
g_boItemMoving := FALSE;
g_MovingItem.Item.S.Name := '';
//倔付甫 滚副 扒瘤 拱绢夯促.
DialogSize := 1;
DMessageDlg ('' +g_sGoldName+ ' 你想放下多少金币?', [mbOk, mbAbort]);
GetValidStrVal (DlgEditText, valstr, [' ']);
dropgold := Str_ToInt (valstr, 0);
//
FrmMain.SendDropGold (dropgold);
end;
if g_MovingItem.Index >= 0 then //酒捞袍 啊规俊辑 滚赴巴父..
DropMovingItem;
end;
end;
procedure TFrmDlg.DBackgroundMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if g_boItemMoving then begin
DBackground.WantReturn := TRUE;
end;
end;
procedure TFrmDlg.DBottomMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
function ExtractUserName (line: string): string;
var
uname: string;
begin
GetValidStr3 (line, line, ['(', '!', '*', '/', ')']);
GetValidStr3 (line, uname, [' ', '=', ':']);
if uname <> '' then
if (uname[1] = '/') or (uname[1] = '(') or (uname[1] = ' ') or (uname[1] = '[') then
uname := '';
Result := uname;
end;
var
n: integer;
str: string;
begin
//当鼠标点在底部状态栏的消息上时
if (X >= 208) and (X <= 308+374) and (Y >= SCREENHEIGHT-130) and (Y <= SCREENHEIGHT-130 + 12*9) then begin
n := DScreen.ChatBoardTop + (Y - (SCREENHEIGHT-130)) div 12;
if (n < DScreen.ChatStrs.Count) then begin
if not PlayScene.EdChat.Visible then begin
PlayScene.EdChat.Visible := TRUE;
PlayScene.EdChat.SetFocus;
end;
PlayScene.EdChat.Text := '/' + ExtractUserName (DScreen.ChatStrs[n]) + ' ';
PlayScene.EdChat.SelStart := Length(PlayScene.EdChat.Text);
PlayScene.EdChat.SelLength := 0;
end else
PlayScene.EdChat.Text := '';
end;
end;
{------------------------------------------------------------------------}
////显示通用对话框
function TFrmDlg.DMessageDlg (msgstr: string; DlgButtons: TMsgDlgButtons): TModalResult;
const
XBase = 324;
var
I: Integer;
lx, ly: integer;
d: TDirectDrawSurface;
procedure ShowDice();
var
I: Integer;
bo05:Boolean;
begin
if m_nDiceCount = 1 then begin
if m_Dice[0].n67C < 20 then begin
if GetTickCount - m_Dice[0].dwPlayTick > 100 then begin
if m_Dice[0].n67C div 5 = 4 then begin
m_Dice[0].nPlayPoint:=Random(6) + 1;
end else begin
m_Dice[0].nPlayPoint:=m_Dice[0].n67C div 5 + 8;
end;
m_Dice[0].dwPlayTick:=GetTickCount();
Inc(m_Dice[0].n67C);
end;
exit;
end;//
m_Dice[0].nPlayPoint:= m_Dice[0].nDicePoint;
if GetTickCount - m_Dice[0].dwPlayTick > 1500 then begin
DMsgDlg.Visible:=False;
end;
exit;
end;//
bo05:=True;
for I := 0 to m_nDiceCount - 1 do begin
if m_Dice[I].n67C < m_Dice[I].n680 then begin
if GetTickCount - m_Dice[I].dwPlayTick > 100 then begin
if m_Dice[I].n67C div 5 = 4 then begin
m_Dice[I].nPlayPoint:=Random(6) + 1;
end else begin
m_Dice[I].nPlayPoint:=m_Dice[I].n67C div 5 + 8;
end;
m_Dice[I].dwPlayTick:=GetTickCount();
Inc(m_Dice[I].n67C);
end;
bo05:=False;
end else begin //004915E4
m_Dice[I].nPlayPoint:= m_Dice[I].nDicePoint;
if GetTickCount - m_Dice[I].dwPlayTick < 2000 then begin
bo05:=False;
end;
end;
end; //for
if bo05 then begin
DMsgDlg.Visible:=False;
end;
end;
begin
if DConfigDlg.Visible then begin //打开提示框时关闭选项框
DOptionClick();
end;
lx := XBase;
ly := 126;
case DialogSize of
0: //小对话框
begin
d := g_WMainImages.Images[381];
if d <> nil then begin
DMsgDlg.SetImgIndex (g_WMainImages, 381);
DMsgDlg.Left := (SCREENWIDTH - d.Width) div 2;
DMsgDlg.Top := (SCREENHEIGHT - d.Height) div 2;
msglx := 39;
msgly := 38;
lx := 90;
ly := 36;
end;
end;
1: //大对话框(横)
begin
d := g_WMainImages.Images[360];
if d <> nil then begin
DMsgDlg.SetImgIndex (g_WMainImages, 360);
DMsgDlg.Left := (SCREENWIDTH - d.Width) div 2;
DMsgDlg.Top := (SCREENHEIGHT - d.Height) div 2;
msglx := 39;
msgly := 38;
lx := XBase;
ly := 126;
end;
end;
2: //大对话框(竖)
begin
d := g_WMainImages.Images[380];
if d <> nil then begin
DMsgDlg.SetImgIndex (g_WMainImages, 380);
DMsgDlg.Left := (SCREENWIDTH - d.Width) div 2;
DMsgDlg.Top := (SCR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -