fstate.pas
来自「2009最新 传奇汉化0599代码 传奇汉化」· PAS 代码 · 共 1,919 行 · 第 1/5 页
PAS
1,919 行
procedure DBBSListRefreshClick(Sender: TObject; X, Y: Integer);
procedure DBBSListCloseClick(Sender: TObject; X, Y: Integer);
procedure DBBSListOKClick(Sender: TObject; X, Y: Integer);
procedure DBBSMsgCloseClick(Sender: TObject; X, Y: Integer);
procedure DBBSMsgDlgDirectPaint(Sender: TObject;
dsurface: TDirectDrawSurface);
procedure DBBSListWriteClick(Sender: TObject; X, Y: Integer);
procedure DBBSListNoticeClick(Sender: TObject; X, Y: Integer);
procedure DBBSMsgOkClick(Sender: TObject; X, Y: Integer);
procedure DBBSMsgReplyClick(Sender: TObject; X, Y: Integer);
procedure DBBSMsgDeleteClick(Sender: TObject; X, Y: Integer);
procedure DOptionsCloseClick(Sender: TObject; X, Y: Integer);
procedure DOptionsSoundOffClick(Sender: TObject; X, Y: Integer);
procedure DOptionsSoundOnClick(Sender: TObject; X, Y: Integer);
procedure DOptionsDropViewOnClick(Sender: TObject; X, Y: Integer);
procedure DOptionsDropViewOffClick(Sender: TObject; X, Y: Integer);
procedure DOptionsEffectOffClick(Sender: TObject; X, Y: Integer);
procedure DOptionsEffectOnClick(Sender: TObject; X, Y: Integer);
procedure DOptionsSkillBarOffClick(Sender: TObject; X, Y: Integer);
procedure DOptionsSkillBarOnClick(Sender: TObject; X, Y: Integer);
procedure DOptionsSkillMode1Click(Sender: TObject; X, Y: Integer);
procedure DOptionsSkillMode2Click(Sender: TObject; X, Y: Integer);
procedure DSkillBarDirectPaint(Sender: TObject;
dsurface: TDirectDrawSurface);
procedure DSkillBarMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure DUSGroupClick(Sender: TObject; X, Y: Integer);
procedure DUSFriendClick(Sender: TObject; X, Y: Integer);
procedure DUSMailClick(Sender: TObject; X, Y: Integer);
procedure DSalesMailClick(Sender: TObject; X, Y: Integer);
procedure DSelectChrClick(Sender: TObject; X, Y: Integer);
private
DlgTemp: TList;
magcur, magtop: integer;
EdDlgEdit: TEdit;
Memo: TMemo;
ViewDlgEdit: Boolean;
msglx, msgly: integer;
MenuTop: integer;
MagKeyIcon, MagKeyCurKey: integer;
MagKeyMagName: string;
MagicPage: integer;
BlinkTime: longword;
BlinkCount: integer; //0..9
procedure HideAllControls;
procedure RestoreHideControls;
procedure PageChanged;
procedure DealItemReturnBag (mitem: TClientItem);
procedure DealZeroGold;
public
MaxLineHeight: Integer;
StatePage: integer;
MsgText: string;
DialogSize: integer;
{
m_n66C:Integer;
m_n688:Integer;
m_n6A4:Integer;
m_n6A8:Integer;
}
// m_Dicea:array[0..35] of Integer;
m_nDiceCount:Integer;
m_boPlayDice:Boolean;
m_Dice:array[0..9] of TDiceInfo;
MerchantName: string;
MerchantFace: integer;
MDlgStr: string;
MDlgPoints: TList;
RequireAddPoints: Boolean;
SelectMenuStr: string;
LastestClickTime: longword;
SpotDlgMode: TSpotDlgMode;
MenuList: TList; //list of PTClientGoods
MenuIndex: integer;
CurDetailItem: string;
AuctionMenuIndex: Integer;
GTListMenuIndex: Integer;
MenuTopLine: integer;
BoDetailMenu: Boolean;
BoStorageMenu: Boolean;
BoNoDisplayMaxDura: Boolean;
BoMakeDrugMenu: Boolean;
BoMakeGem:Boolean;
sMakeGemName:String;
NAHelps: TStringList;
NewAccountTitle: string;
DlgEditText: string;
UserState1: TUserStateInfo;
Guild: string;
GuildFlag: string;
GuildCommanderMode: Boolean;
GuildStrs: TStringList;
GuildStrs2: TStringList;
GuildNotice: TStringList;
GuildMembers: TStringList;
GuildTopLine: integer;
GuildEditHint: string;
GuildChats: TStringList;
BoGuildChat: Boolean;
FriendList: Array[0..1] of TList; //List of PTClientFriends
FriendIndex: Array[0..1] of Integer;
FriendPage: Integer;
FriendScreen: Byte; //0 = FriendList, 1 = BlackList
EdSalesEdit: TMemo;
EdMemo: TMemo;
EdMail: TMemo;
EdMailRead: TMemo;
BBSMemo: TMemo;
MailList: TList; //List of pTMailItem
BlockList: TList; //List of pTBlockItem
MailIndex: Integer;
BlockIndex: Integer;
MailPage: Integer;
BlockPage: Integer;
BBSSticky: integer;
LastBeltDoubleClick: integer;
procedure Initialize;
procedure DoBeltSetup;
procedure OpenMyStatus;
procedure OpenUserState (UserState: TUserStateInfo);
procedure OpenItemBag;
procedure ViewBottomBox (visible: Boolean);
procedure CancelItemMoving;
procedure DropMovingItem;
procedure OpenAdjustAbility;
procedure ShowSelectServerDlg;
function DMessageDlg (msgstr: string; DlgButtons: TMsgDlgButtons): TModalResult;
procedure ShowMDlg (face: integer; mname, msgstr: string);
procedure ShowGuildDlg;
procedure ShowGuildEditNotice;
procedure ShowGuildEditGrade;
procedure ResetMenuDlg;
procedure ShowShopMenuDlg;
procedure ShowShopSellDlg;
procedure CloseDSellDlg;
procedure CancelGemMaking;
procedure CloseMDlg;
procedure ToggleShowGroupDlg;
procedure OpenDealDlg;
procedure CloseDealDlg;
procedure OpenFriendDlg;
procedure OpenMailDlg;
procedure OpenBlockListDlg;
procedure ToggleAuctionWindow;
procedure SoldOutGoods (itemserverindex: integer);
procedure DelStorageItem (itemserverindex: integer);
procedure GetMouseItemInfo (var iname, line1, line2, line3: string; var useable: boolean);
procedure SetMagicKeyDlg (icon: integer; magname: string; var curkey: word);
procedure AddGuildChat (str: string);
function FindFriendObject(sName: String): pTClientFriends;
procedure ToggleGTListWindow;
procedure ToggleDecoListWindow;
procedure ToggleBBSListWindow;
procedure ToggleBBSMsgWindow;
end;
var
FrmDlg: TFrmDlg;
implementation
uses
ClMain, MShare, Share, SDK;
{$R *.DFM}
function TFrmDlg.FindFriendObject(sName: String): pTClientFriends;
var
A,I: Integer;
Friend: ptClientFriends;
begin
for A := 0 to 1 do begin
for I := 0 to FriendList[A].Count-1 do begin
Friend := PTClientFriends(FriendList[A].Items[I]);
if Friend <> nil then begin
if LowerCase(Friend.Name) = LowerCase(sName) then begin
Result := Friend;
exit;
end;
end;
end;
end;
Result := nil;
end;
{
## MovingItem.Index
1~n : 啊规芒狼 酒捞袍 鉴辑
-1~-8 : 厘馒芒俊辑狼 酒捞袍 鉴辑
-97 : 背券芒狼 捣
-98 : 捣
-99 : 迫扁 芒俊辑狼 酒捞袍 鉴辑
-20~29: 背券芒俊辑狼 酒捞袍 鉴辑
}
procedure TFrmDlg.FormCreate(Sender: TObject);
begin
MaxLineHeight := 0;
StatePage := 0;
DlgTemp := TList.Create;
DialogSize := 1; //扁夯 农扁
m_nDiceCount:=0;
m_boPlayDice:=False;
magcur := 0;
magtop := 0;
MDlgPoints := TList.Create;
SelectMenuStr := '';
MenuList := TList.Create;
MenuIndex := -1;
MenuTopLine := 0;
BoDetailMenu := FALSE;
BoStorageMenu := FALSE;
BoNoDisplayMaxDura := FALSE;
BoMakeDrugMenu := FALSE;
MagicPage := 0;
NAHelps := TStringList.Create;
BlinkTime := GetTickCount;
BlinkCount := 0;
g_SellDlgItem.S.Name := '';
Guild := '';
GuildFlag := '';
GuildCommanderMode := FALSE;
GuildStrs := TStringList.Create;
GuildStrs2 := TStringList.Create; //归诀侩
GuildNotice := TStringList.Create;
GuildMembers := TStringList.Create;
GuildChats := TStringList.Create;
FriendList[F_GOOD] := TList.Create;
FriendList[F_BAD] := TList.Create;
FriendIndex[F_GOOD] := -1;
FriendIndex[F_BAD] := -1;
FriendScreen := F_GOOD;
EdMemo := TMemo.Create (FrmMain.Owner);
with EdMemo do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
MaxLength := 100;
OnMouseMove := DGenericMouseMove;
OnChange := TextAreaNotify;
OnClick := TextAreaNotify;
OnDblClick := TextAreaNotify;
end;
EdSalesEdit := TMemo.Create (FrmMain.Owner);
with EdSalesEdit do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
MaxLength := 100;
OnMouseMove := DGenericMouseMove;
OnChange := TextAreaNotify;
OnClick := TextAreaNotify;
OnDblClick := TextAreaNotify;
Left := 34;
Top := 414;
Width := 143;
Height := 19;
end;
EdDlgEdit := TEdit.Create (FrmMain.Owner);
with EdDlgEdit do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
MaxLength := 30;
Height := 16;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
end;
Memo := TMemo.Create (FrmMain.Owner);
with Memo do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
end;
MailList := TList.Create;
BlockList := TList.Create;
EdMail := TMemo.Create (FrmMain.Owner);
with EdMail do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
MaxLength := 100;
OnMouseMove := DGenericMouseMove;
OnChange := TextAreaNotify;
OnClick := TextAreaNotify;
OnDblClick := TextAreaNotify;
end;
EdMailRead := TMemo.Create (FrmMain.Owner);
with EdMailRead do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
MaxLength := 100;
OnMouseMove := DGenericMouseMove;
OnChange := TextAreaNotify;
OnClick := TextAreaNotify;
OnDblClick := TextAreaNotify;
end;
BBSMemo := TMemo.Create (FrmMain.Owner);
with BBSMemo do begin
Parent := FrmMain;
Color := clBlack;
Font.Color := clWhite;
Font.Size := 10;
Ctl3d := FALSE;
BorderStyle := bsSingle; {OnKeyPress := EdDlgEditKeyPress;}
Visible := FALSE;
OnChange := BBSTextNotify;
//OnMouseMove := DGenericMouseMove;
//OnChange := TextAreaNotify;
//OnClick := TextAreaNotify;
//OnDblClick := TextAreaNotify;
end;
end;
procedure TFrmDlg.FormDestroy(Sender: TObject);
begin
DlgTemp.Free;
MDlgPoints.Free; //埃窜洒..
MenuList.Free;
NAHelps.Free;
GuildStrs.Free;
GuildStrs2.Free;
GuildNotice.Free;
GuildMembers.Free;
GuildChats.Free;
FriendList[F_GOOD].Free;
FriendList[F_BAD].Free;
MailList.Free;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?