www.pudn.com > woool12.rar > GameCommand.pas
unit GameCommand;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, ComCtrls, StdCtrls, Spin, Grobal2;
type
TfrmGameCmd = class(TForm)
PageControl: TPageControl;
TabSheet1: TTabSheet;
StringGridGameCmd: TStringGrid;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
GroupBox1: TGroupBox;
Label1: TLabel;
EditUserCmdName: TEdit;
EditUserCmdPerMission: TSpinEdit;
Label6: TLabel;
EditUserCmdOK: TButton;
LabelUserCmdFunc: TLabel;
LabelUserCmdParam: TLabel;
Label2: TLabel;
Label3: TLabel;
EditUserCmdSave: TButton;
StringGridGameMasterCmd: TStringGrid;
GroupBox2: TGroupBox;
Label4: TLabel;
Label5: TLabel;
LabelGameMasterCmdFunc: TLabel;
LabelGameMasterCmdParam: TLabel;
Label7: TLabel;
Label8: TLabel;
EditGameMasterCmdName: TEdit;
EditGameMasterCmdPerMission: TSpinEdit;
EditGameMasterCmdOK: TButton;
EditGameMasterCmdSave: TButton;
StringGridGameDebugCmd: TStringGrid;
GroupBox3: TGroupBox;
Label9: TLabel;
Label10: TLabel;
LabelGameDebugCmdFunc: TLabel;
LabelGameDebugCmdParam: TLabel;
Label11: TLabel;
Label12: TLabel;
EditGameDebugCmdName: TEdit;
EditGameDebugCmdPerMission: TSpinEdit;
EditGameDebugCmdOK: TButton;
EditGameDebugCmdSave: TButton;
procedure FormCreate(Sender: TObject);
procedure StringGridGameCmdClick(Sender: TObject);
procedure EditUserCmdNameChange(Sender: TObject);
procedure EditUserCmdPerMissionChange(Sender: TObject);
procedure EditUserCmdOKClick(Sender: TObject);
procedure EditUserCmdSaveClick(Sender: TObject);
procedure StringGridGameMasterCmdClick(Sender: TObject);
procedure EditGameMasterCmdNameChange(Sender: TObject);
procedure EditGameMasterCmdPerMissionChange(Sender: TObject);
procedure EditGameMasterCmdOKClick(Sender: TObject);
procedure StringGridGameDebugCmdClick(Sender: TObject);
procedure EditGameDebugCmdNameChange(Sender: TObject);
procedure EditGameDebugCmdPerMissionChange(Sender: TObject);
procedure EditGameDebugCmdOKClick(Sender: TObject);
procedure EditGameMasterCmdSaveClick(Sender: TObject);
procedure EditGameDebugCmdSaveClick(Sender: TObject);
private
nRefGameUserIndex: Integer;
nRefGameMasterIndex: Integer;
nRefGameDebugIndex: Integer;
procedure RefUserCommand();
procedure RefGameMasterCommand();
procedure RefGameMasterCmd(GameCmd: pTGameCmd; sCmdParam, sDesc: string);
procedure RefDebugCommand();
procedure RefGameDebugCmd(GameCmd: pTGameCmd; sCmdParam,
sDesc: string);
procedure RefGameUserCmd(GameCmd: pTGameCmd; sCmdParam, sDesc: string);
{ Private declarations }
public
procedure Open();
{ Public declarations }
end;
var
frmGameCmd : TfrmGameCmd;
implementation
uses M2Share;
{$R *.dfm}
procedure TfrmGameCmd.FormCreate(Sender: TObject);
begin
PageControl.ActivePageIndex := 0;
StringGridGameCmd.RowCount := 50;
StringGridGameCmd.Cells[0, 0] := '游戏命令';
StringGridGameCmd.Cells[1, 0] := '所需权限';
StringGridGameCmd.Cells[2, 0] := '命令格式';
StringGridGameCmd.Cells[3, 0] := '命令说明';
StringGridGameMasterCmd.RowCount := 105;
StringGridGameMasterCmd.Cells[0, 0] := '游戏命令';
StringGridGameMasterCmd.Cells[1, 0] := '所需权限';
StringGridGameMasterCmd.Cells[2, 0] := '命令格式';
StringGridGameMasterCmd.Cells[3, 0] := '命令说明';
StringGridGameDebugCmd.RowCount := 41;
StringGridGameDebugCmd.Cells[0, 0] := '游戏命令';
StringGridGameDebugCmd.Cells[1, 0] := '所需权限';
StringGridGameDebugCmd.Cells[2, 0] := '命令格式';
StringGridGameDebugCmd.Cells[3, 0] := '命令说明';
end;
procedure TfrmGameCmd.Open;
begin
RefUserCommand();
RefGameMasterCommand();
RefDebugCommand();
ShowModal;
end;
procedure TfrmGameCmd.RefGameUserCmd(GameCmd: pTGameCmd; sCmdParam, sDesc:
string);
begin
Inc(nRefGameUserIndex);
if StringGridGameCmd.RowCount - 1 < nRefGameUserIndex then
begin
StringGridGameCmd.RowCount := nRefGameUserIndex + 1;
end;
StringGridGameCmd.Cells[0, nRefGameUserIndex] := GameCmd.sCmd;
StringGridGameCmd.Cells[1, nRefGameUserIndex] :=
IntToStr(GameCmd.nPermissionMin) + '/' + IntToStr(GameCmd.nPermissionMax);
StringGridGameCmd.Cells[2, nRefGameUserIndex] := sCmdParam;
StringGridGameCmd.Cells[3, nRefGameUserIndex] := sDesc;
StringGridGameCmd.Objects[0, nRefGameUserIndex] := TObject(GameCmd);
end;
// StringGridGameCmd.Cells[3,12]:='未使用';
// StringGridGameCmd.Cells[3,13]:='移动地图指定座标(需要戴传送装备)';
// StringGridGameCmd.Cells[3,14]:='探测人物所在位置(需要戴传送装备)';
// StringGridGameCmd.Cells[3,15]:='允许记忆传送';
// StringGridGameCmd.Cells[3,16]:='将组队人员传送到身边(需要戴记忆全套装备)';
// StringGridGameCmd.Cells[3,17]:='允许行会传送';
// StringGridGameCmd.Cells[3,18]:='将行会成员传送身边(需要戴行会传送装备)';
// StringGridGameCmd.Cells[3,19]:='开启仓库密码锁';
// StringGridGameCmd.Cells[3,20]:='开启登录密码锁';
// StringGridGameCmd.Cells[3,21]:='将仓库密码锁上';
// StringGridGameCmd.Cells[3,22]:='设置仓库密码';
// StringGridGameCmd.Cells[3,23]:='修改仓库密码';
// StringGridGameCmd.Cells[3,24]:='清除密码(先开锁再清除密码)';
// StringGridGameCmd.Cells[3,25]:='未使用';
// StringGridGameCmd.Cells[3,26]:='查询夫妻位置';
// StringGridGameCmd.Cells[3,27]:='允许夫妻传送';
// StringGridGameCmd.Cells[3,28]:='夫妻将对方传送到身边';
// StringGridGameCmd.Cells[3,29]:='查询师徒位置';
// StringGridGameCmd.Cells[3,30]:='允许师徒传送';
// StringGridGameCmd.Cells[3,31]:='师父将徒弟召唤到身边';
// StringGridGameCmd.Cells[3,32]:='更换攻击模式(此命令不要修改)';
// StringGridGameCmd.Cells[3,33]:='宝宝攻击状态(此命令不要修改)';
// StringGridGameCmd.Cells[3,34]:='带马牌后骑上马';
// StringGridGameCmd.Cells[3,35]:='从马上下来';
// StringGridGameCmd.Cells[3,36]:='';
// StringGridGameCmd.Cells[3,37]:='开启/关闭登录锁';
procedure TfrmGameCmd.RefUserCommand;
begin
EditUserCmdOK.Enabled := False;
nRefGameUserIndex := 0;
RefGameUserCmd(@g_GameCommand.Data,
'@' + g_GameCommand.Data.sCmd,
'查看当前服务器日期时间');
RefGameUserCmd(@g_GameCommand.PRVMSG,
'@' + g_GameCommand.PRVMSG.sCmd,
'禁止指定人物发的私聊信息');
RefGameUserCmd(@g_GameCommand.ALLOWMSG,
'@' + g_GameCommand.ALLOWMSG.sCmd,
'禁止别人向自己发私聊信息');
RefGameUserCmd(@g_GameCommand.LETSHOUT,
'@' + g_GameCommand.LETSHOUT.sCmd,
'禁止接收组队聊天信息');
RefGameUserCmd(@g_GameCommand.LETTRADE,
'@' + g_GameCommand.LETTRADE.sCmd,
'禁止交易交易物品');
RefGameUserCmd(@g_GameCommand.LETGUILD,
'@' + g_GameCommand.LETGUILD.sCmd,
'允许加入行会');
RefGameUserCmd(@g_GameCommand.ENDGUILD,
'@' + g_GameCommand.ENDGUILD.sCmd,
'退出当前所加入的行会');
RefGameUserCmd(@g_GameCommand.BANGUILDCHAT,
'@' + g_GameCommand.BANGUILDCHAT.sCmd,
'禁止接收行会聊天信息');
RefGameUserCmd(@g_GameCommand.AUTHALLY,
'@' + g_GameCommand.AUTHALLY.sCmd,
'许行会进入联盟');
RefGameUserCmd(@g_GameCommand.AUTH,
'@' + g_GameCommand.AUTH.sCmd,
'开始进行行会联盟');
RefGameUserCmd(@g_GameCommand.AUTHCANCEL,
'@' + g_GameCommand.AUTHCANCEL.sCmd,
'取消行会联盟关系');
exit;
StringGridGameCmd.Cells[0, 12] := g_GameCommand.DIARY.sCmd;
StringGridGameCmd.Cells[1, 12] :=
IntToStr(g_GameCommand.DIARY.nPermissionMin);
StringGridGameCmd.Cells[2, 12] := '@' + g_GameCommand.DIARY.sCmd;
StringGridGameCmd.Objects[0, 12] := TObject(@g_GameCommand.DIARY);
StringGridGameCmd.Cells[0, 13] := g_GameCommand.USERMOVE.sCmd;
StringGridGameCmd.Cells[1, 13] :=
IntToStr(g_GameCommand.USERMOVE.nPermissionMin);
StringGridGameCmd.Cells[2, 13] := '@' + g_GameCommand.USERMOVE.sCmd;
StringGridGameCmd.Objects[0, 13] := TObject(@g_GameCommand.USERMOVE);
StringGridGameCmd.Cells[0, 14] := g_GameCommand.SEARCHING.sCmd;
StringGridGameCmd.Cells[1, 14] :=
IntToStr(g_GameCommand.SEARCHING.nPermissionMin);
StringGridGameCmd.Cells[2, 14] := '@' + g_GameCommand.SEARCHING.sCmd;
StringGridGameCmd.Objects[0, 14] := TObject(@g_GameCommand.SEARCHING);
StringGridGameCmd.Cells[0, 15] := g_GameCommand.ALLOWGROUPCALL.sCmd;
StringGridGameCmd.Cells[1, 15] :=
IntToStr(g_GameCommand.ALLOWGROUPCALL.nPermissionMin);
StringGridGameCmd.Cells[2, 15] := '@' + g_GameCommand.ALLOWGROUPCALL.sCmd;
StringGridGameCmd.Objects[0, 15] := TObject(@g_GameCommand.ALLOWGROUPCALL);
StringGridGameCmd.Cells[0, 16] := g_GameCommand.GROUPRECALLL.sCmd;
StringGridGameCmd.Cells[1, 16] :=
IntToStr(g_GameCommand.GROUPRECALLL.nPermissionMin);
StringGridGameCmd.Cells[2, 16] := '@' + g_GameCommand.GROUPRECALLL.sCmd;
StringGridGameCmd.Objects[0, 16] := TObject(@g_GameCommand.GROUPRECALLL);
StringGridGameCmd.Cells[0, 17] := g_GameCommand.ALLOWGUILDRECALL.sCmd;
StringGridGameCmd.Cells[1, 17] :=
IntToStr(g_GameCommand.ALLOWGUILDRECALL.nPermissionMin);
StringGridGameCmd.Cells[2, 17] := '@' + g_GameCommand.ALLOWGUILDRECALL.sCmd;
StringGridGameCmd.Objects[0, 17] := TObject(@g_GameCommand.ALLOWGUILDRECALL);
StringGridGameCmd.Cells[0, 18] := g_GameCommand.GUILDRECALLL.sCmd;
StringGridGameCmd.Cells[1, 18] :=
IntToStr(g_GameCommand.GUILDRECALLL.nPermissionMin);
StringGridGameCmd.Cells[2, 18] := '@' + g_GameCommand.GUILDRECALLL.sCmd;
StringGridGameCmd.Objects[0, 18] := TObject(@g_GameCommand.GUILDRECALLL);
StringGridGameCmd.Cells[0, 19] := g_GameCommand.UNLOCKSTORAGE.sCmd;
StringGridGameCmd.Cells[1, 19] :=
IntToStr(g_GameCommand.UNLOCKSTORAGE.nPermissionMin);
StringGridGameCmd.Cells[2, 19] := '@' + g_GameCommand.UNLOCKSTORAGE.sCmd;
StringGridGameCmd.Objects[0, 19] := TObject(@g_GameCommand.UNLOCKSTORAGE);
StringGridGameCmd.Cells[0, 20] := g_GameCommand.UnLock.sCmd;
StringGridGameCmd.Cells[1, 20] :=
IntToStr(g_GameCommand.UnLock.nPermissionMin);
StringGridGameCmd.Cells[2, 20] := '@' + g_GameCommand.UnLock.sCmd;
StringGridGameCmd.Objects[0, 20] := TObject(@g_GameCommand.UnLock);
StringGridGameCmd.Cells[0, 21] := g_GameCommand.Lock.sCmd;
StringGridGameCmd.Cells[1, 21] := IntToStr(g_GameCommand.Lock.nPermissionMin);
StringGridGameCmd.Cells[2, 21] := '@' + g_GameCommand.Lock.sCmd;
StringGridGameCmd.Objects[0, 21] := TObject(@g_GameCommand.Lock);
StringGridGameCmd.Cells[0, 22] := g_GameCommand.SETPASSWORD.sCmd;
StringGridGameCmd.Cells[1, 22] :=
IntToStr(g_GameCommand.SETPASSWORD.nPermissionMin);
StringGridGameCmd.Cells[2, 22] := '@' + g_GameCommand.SETPASSWORD.sCmd;
StringGridGameCmd.Objects[0, 22] := TObject(@g_GameCommand.SETPASSWORD);
StringGridGameCmd.Cells[0, 23] := g_GameCommand.CHGPASSWORD.sCmd;
StringGridGameCmd.Cells[1, 23] :=
IntToStr(g_GameCommand.CHGPASSWORD.nPermissionMin);
StringGridGameCmd.Cells[2, 23] := '@' + g_GameCommand.CHGPASSWORD.sCmd;
StringGridGameCmd.Objects[0, 23] := TObject(@g_GameCommand.CHGPASSWORD);
StringGridGameCmd.Cells[0, 24] := g_GameCommand.UNPASSWORD.sCmd;
StringGridGameCmd.Cells[1, 24] :=
IntToStr(g_GameCommand.UNPASSWORD.nPermissionMin);
StringGridGameCmd.Cells[2, 24] := '@' + g_GameCommand.UNPASSWORD.sCmd;
StringGridGameCmd.Objects[0, 24] := TObject(@g_GameCommand.UNPASSWORD);
StringGridGameCmd.Cells[0, 25] := g_GameCommand.MEMBERFUNCTION.sCmd;
StringGridGameCmd.Cells[1, 25] :=
IntToStr(g_GameCommand.MEMBERFUNCTION.nPermissionMin);
StringGridGameCmd.Cells[2, 25] := '@' + g_GameCommand.MEMBERFUNCTION.sCmd;
StringGridGameCmd.Objects[0, 25] := TObject(@g_GameCommand.MEMBERFUNCTION);
StringGridGameCmd.Cells[0, 26] := g_GameCommand.DEAR.sCmd;
StringGridGameCmd.Cells[1, 26] := IntToStr(g_GameCommand.DEAR.nPermissionMin);
StringGridGameCmd.Cells[2, 26] := '@' + g_GameCommand.DEAR.sCmd;
StringGridGameCmd.Objects[0, 26] := TObject(@g_GameCommand.DEAR);
StringGridGameCmd.Cells[0, 27] := g_GameCommand.ALLOWDEARRCALL.sCmd;
StringGridGameCmd.Cells[1, 27] :=
IntToStr(g_GameCommand.ALLOWDEARRCALL.nPermissionMin);
StringGridGameCmd.Cells[2, 27] := '@' + g_GameCommand.ALLOWDEARRCALL.sCmd;
StringGridGameCmd.Objects[0, 27] := TObject(@g_GameCommand.ALLOWDEARRCALL);
StringGridGameCmd.Cells[0, 28] := g_GameCommand.DEARRECALL.sCmd;
StringGridGameCmd.Cells[1, 28] :=
IntToStr(g_GameCommand.DEARRECALL.nPermissionMin);
StringGridGameCmd.Cells[2, 28] := '@' + g_GameCommand.DEARRECALL.sCmd;
StringGridGameCmd.Objects[0, 28] := TObject(@g_GameCommand.DEARRECALL);
StringGridGameCmd.Cells[0, 29] := g_GameCommand.MASTER.sCmd;
StringGridGameCmd.Cells[1, 29] :=
IntToStr(g_GameCommand.MASTER.nPermissionMin);
StringGridGameCmd.Cells[2, 29] := '@' + g_GameCommand.MASTER.sCmd;
StringGridGameCmd.Objects[0, 29] := TObject(@g_GameCommand.MASTER);
StringGridGameCmd.Cells[0, 30] := g_GameCommand.ALLOWMASTERRECALL.sCmd;
StringGridGameCmd.Cells[1, 30] :=
IntToStr(g_GameCommand.ALLOWMASTERRECALL.nPermissionMin);
StringGridGameCmd.Cells[2, 30] := '@' + g_GameCommand.ALLOWMASTERRECALL.sCmd;
StringGridGameCmd.Objects[0, 30] := TObject(@g_GameCommand.ALLOWMASTERRECALL);
StringGridGameCmd.Cells[0, 31] := g_GameCommand.MASTERECALL.sCmd;
StringGridGameCmd.Cells[1, 31] :=
IntToStr(g_GameCommand.MASTERECALL.nPermissionMin);
StringGridGameCmd.Cells[2, 31] := '@' + g_GameCommand.MASTERECALL.sCmd;
StringGridGameCmd.Objects[0, 31] := TObject(@g_GameCommand.MASTERECALL);
StringGridGameCmd.Cells[0, 32] := g_GameCommand.ATTACKMODE.sCmd;
StringGridGameCmd.Cells[1, 32] :=
IntToStr(g_GameCommand.ATTACKMODE.nPermissionMin);
StringGridGameCmd.Cells[2, 32] := '@' + g_GameCommand.ATTACKMODE.sCmd;
StringGridGameCmd.Objects[0, 32] := TObject(@g_GameCommand.ATTACKMODE);
StringGridGameCmd.Cells[0, 33] := g_GameCommand.REST.sCmd;
StringGridGameCmd.Cells[1, 33] := IntToStr(g_GameCommand.REST.nPermissionMin);
StringGridGameCmd.Cells[2, 33] := '@' + g_GameCommand.REST.sCmd;
StringGridGameCmd.Objects[0, 33] := TObject(@g_GameCommand.REST);
StringGridGameCmd.Cells[0, 34] := g_GameCommand.TAKEONHORSE.sCmd;
StringGridGameCmd.Cells[1, 34] :=
IntToStr(g_GameCommand.TAKEONHORSE.nPermissionMin);
StringGridGameCmd.Cells[2, 34] := '@' + g_GameCommand.TAKEONHORSE.sCmd;
StringGridGameCmd.Objects[0, 34] := TObject(@g_GameCommand.TAKEONHORSE);
StringGridGameCmd.Cells[0, 35] := g_GameCommand.TAKEOFHORSE.sCmd;
StringGridGameCmd.Cells[1, 35] :=
IntToStr(g_GameCommand.TAKEOFHORSE.nPermissionMin);
StringGridGameCmd.Cells[2, 35] := '@' + g_GameCommand.TAKEOFHORSE.sCmd;
StringGridGameCmd.Objects[0, 35] := TObject(@g_GameCommand.TAKEOFHORSE);
StringGridGameCmd.Cells[0, 36] := g_GameCommand.MEMBERFUNCTIONEX.sCmd;
StringGridGameCmd.Cells[1, 36] :=
IntToStr(g_GameCommand.MEMBERFUNCTIONEX.nPermissionMin);
StringGridGameCmd.Cells[2, 36] := '@' + g_GameCommand.MEMBERFUNCTIONEX.sCmd;
StringGridGameCmd.Objects[0, 36] := TObject(@g_GameCommand.MEMBERFUNCTIONEX);
StringGridGameCmd.Cells[0, 37] := g_GameCommand.LOCKLOGON.sCmd;
StringGridGameCmd.Cells[1, 37] :=
IntToStr(g_GameCommand.LOCKLOGON.nPermissionMin);
StringGridGameCmd.Cells[2, 37] := '@' + g_GameCommand.LOCKLOGON.sCmd;
StringGridGameCmd.Objects[0, 37] := TObject(@g_GameCommand.LOCKLOGON);
end;
procedure TfrmGameCmd.StringGridGameCmdClick(Sender: TObject);
var
nIndex : Integer;
GameCmd : pTGameCmd;
begin
nIndex := StringGridGameCmd.Row;
GameCmd := pTGameCmd(StringGridGameCmd.Objects[0, nIndex]);
if GameCmd <> nil then
begin
EditUserCmdName.Text := GameCmd.sCmd;
EditUserCmdPerMission.Value := GameCmd.nPermissionMin;
LabelUserCmdParam.Caption := StringGridGameCmd.Cells[2, nIndex];
LabelUserCmdFunc.Caption := StringGridGameCmd.Cells[3, nIndex];
end;
EditUserCmdOK.Enabled := False;
end;
procedure TfrmGameCmd.EditUserCmdNameChange(Sender: TObject);
begin
EditUserCmdOK.Enabled := True;
EditUserCmdSave.Enabled := True;
end;
procedure TfrmGameCmd.EditUserCmdPerMissionChange(Sender: TObject);
begin
EditUserCmdOK.Enabled := True;
EditUserCmdSave.Enabled := True;
end;
procedure TfrmGameCmd.EditUserCmdOKClick(Sender: TObject);
var
nIndex : Integer;
GameCmd : pTGameCmd;
sCmd : string;
nPermission : Integer;
begin
sCmd := Trim(EditUserCmdName.Text);
nPermission := EditUserCmdPerMission.Value;
if sCmd = '' then
begin
Application.MessageBox('命令名称不能为空!!!', '提示信息', MB_OK +
MB_ICONERROR);
EditUserCmdName.SetFocus;
exit;
end;
nIndex := StringGridGameCmd.Row;
GameCmd := pTGameCmd(StringGridGameCmd.Objects[0, nIndex]);
if GameCmd <> nil then
begin
GameCmd.sCmd := sCmd;
GameCmd.nPermissionMin := nPermission;
end;
RefUserCommand();
end;
procedure TfrmGameCmd.EditUserCmdSaveClick(Sender: TObject);
begin
EditUserCmdSave.Enabled := False;
{$IF SoftVersion <> VERDEMO}
CommandConf.WriteString('Command', 'Date', g_GameCommand.Data.sCmd);
CommandConf.WriteString('Command', 'PrvMsg', g_GameCommand.PRVMSG.sCmd);
CommandConf.WriteString('Command', 'AllowMsg', g_GameCommand.ALLOWMSG.sCmd);
CommandConf.WriteString('Command', 'LetShout', g_GameCommand.LETSHOUT.sCmd);
CommandConf.WriteString('Command', 'LetTrade', g_GameCommand.LETTRADE.sCmd);
CommandConf.WriteString('Command', 'LetGuild', g_GameCommand.LETGUILD.sCmd);
CommandConf.WriteString('Command', 'EndGuild', g_GameCommand.ENDGUILD.sCmd);
CommandConf.WriteString('Command', 'BanGuildChat',
g_GameCommand.BANGUILDCHAT.sCmd);
CommandConf.WriteString('Command', 'AuthAlly', g_GameCommand.AUTHALLY.sCmd);
CommandConf.WriteString('Command', 'Auth', g_GameCommand.AUTH.sCmd);
CommandConf.WriteString('Command', 'AuthCancel',
g_GameCommand.AUTHCANCEL.sCmd);
CommandConf.WriteString('Command', 'ViewDiary', g_GameCommand.DIARY.sCmd);
CommandConf.WriteString('Command', 'UserMove', g_GameCommand.USERMOVE.sCmd);
CommandConf.WriteString('Command', 'Searching', g_GameCommand.SEARCHING.sCmd);
CommandConf.WriteString('Command', 'AllowGroupCall',
g_GameCommand.ALLOWGROUPCALL.sCmd);
CommandConf.WriteString('Command', 'GroupCall',
g_GameCommand.GROUPRECALLL.sCmd);
CommandConf.WriteString('Command', 'AllowGuildReCall',
g_GameCommand.ALLOWGUILDRECALL.sCmd);
CommandConf.WriteString('Command', 'GuildReCall',
g_GameCommand.GUILDRECALLL.sCmd);
CommandConf.WriteString('Command', 'StorageUnLock',
g_GameCommand.UNLOCKSTORAGE.sCmd);
CommandConf.WriteString('Command', 'PasswordUnLock',
g_GameCommand.UnLock.sCmd);
CommandConf.WriteString('Command', 'StorageLock', g_GameCommand.Lock.sCmd);
CommandConf.WriteString('Command', 'StorageSetPassword',
g_GameCommand.SETPASSWORD.sCmd);
CommandConf.WriteString('Command', 'StorageChgPassword',
g_GameCommand.CHGPASSWORD.sCmd);
// CommandConf.WriteString('Command','StorageClearPassword',g_GameCommand.CLRPASSWORD.sCmd)
// CommandConf.WriteInteger('Permission','StorageClearPassword', g_GameCommand.CLRPASSWORD.nPermissionMin)
CommandConf.WriteString('Command', 'StorageUserClearPassword',
g_GameCommand.UNPASSWORD.sCmd);
CommandConf.WriteString('Command', 'MemberFunc',
g_GameCommand.MEMBERFUNCTION.sCmd);
CommandConf.WriteString('Command', 'Dear', g_GameCommand.DEAR.sCmd);
CommandConf.WriteString('Command', 'Master', g_GameCommand.MASTER.sCmd);
CommandConf.WriteString('Command', 'DearRecall',
g_GameCommand.DEARRECALL.sCmd);
CommandConf.WriteString('Command', 'MasterRecall',
g_GameCommand.MASTERECALL.sCmd);
CommandConf.WriteString('Command', 'AllowDearRecall',
g_GameCommand.ALLOWDEARRCALL.sCmd);
CommandConf.WriteString('Command', 'AllowMasterRecall',
g_GameCommand.ALLOWMASTERRECALL.sCmd);
CommandConf.WriteString('Command', 'AttackMode',
g_GameCommand.ATTACKMODE.sCmd);
CommandConf.WriteString('Command', 'Rest', g_GameCommand.REST.sCmd);
CommandConf.WriteString('Command', 'TakeOnHorse',
g_GameCommand.TAKEONHORSE.sCmd);
CommandConf.WriteString('Command', 'TakeOffHorse',
g_GameCommand.TAKEOFHORSE.sCmd);
CommandConf.WriteInteger('Permission', 'Date',
g_GameCommand.Data.nPermissionMin);
CommandConf.WriteInteger('Permission', 'PrvMsg',
g_GameCommand.PRVMSG.nPermissionMin);
CommandConf.WriteInteger('Permission', 'AllowMsg',
g_GameCommand.ALLOWMSG.nPermissionMin);
{$IFEND}
end;
procedure TfrmGameCmd.RefGameMasterCmd(GameCmd: pTGameCmd; sCmdParam, sDesc:
string);
begin
Inc(nRefGameMasterIndex);
if StringGridGameMasterCmd.RowCount - 1 < nRefGameMasterIndex then
begin
StringGridGameMasterCmd.RowCount := nRefGameMasterIndex + 1;
end;
StringGridGameMasterCmd.Cells[0, nRefGameMasterIndex] := GameCmd.sCmd;
StringGridGameMasterCmd.Cells[1, nRefGameMasterIndex] :=
IntToStr(GameCmd.nPermissionMin) + '/' + IntToStr(GameCmd.nPermissionMax);
StringGridGameMasterCmd.Cells[2, nRefGameMasterIndex] := sCmdParam;
StringGridGameMasterCmd.Cells[3, nRefGameMasterIndex] := sDesc;
StringGridGameMasterCmd.Objects[0, nRefGameMasterIndex] := TObject(GameCmd);
end;
procedure TfrmGameCmd.RefGameMasterCommand;
var
GameCmd : pTGameCmd;
sDesc : string;
sCmdParam : string;
begin
EditGameMasterCmdOK.Enabled := False;
nRefGameMasterIndex := 0;
RefGameMasterCmd(@g_GameCommand.CLRPASSWORD,
'@' + g_GameCommand.CLRPASSWORD.sCmd + ' 人物名称',
'清除人物仓库/登录密码(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.WHO,
'@' + g_GameCommand.WHO.sCmd,
'查看当前服务器在线人数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.TOTAL,
'@' + g_GameCommand.TOTAL.sCmd,
'查看所有服务器在线人数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.GAMEMASTER,
'@' + g_GameCommand.GAMEMASTER.sCmd,
'进入/退出管理员模式(进入模式后不会受到任何角色攻击)(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.OBSERVER,
'@' + g_GameCommand.OBSERVER.sCmd,
'进入/退出隐身模式(进入模式后别人看不到自己)(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SUEPRMAN,
'@' + g_GameCommand.SUEPRMAN.sCmd,
'进入/退出无敌模式(进入模式后人物不会死亡)(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.MAKE,
'@' + g_GameCommand.MAKE.sCmd + ' 物品名称 数量',
'制造指定物品(支持权限分配,小于最大权限受允许、禁止制造列表限制)');
RefGameMasterCmd(@g_GameCommand.SMAKE,
'@' + g_GameCommand.SMAKE.sCmd + ' 参数详见使用说明',
'调整自己身上的物品属性(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.Move,
'@' + g_GameCommand.Move.sCmd + ' 地图号',
'移动到指定地图(支持权限分配,小于最大权限受受禁止传送地图列表限制)');
RefGameMasterCmd(@g_GameCommand.POSITIONMOVE,
'@' + g_GameCommand.POSITIONMOVE.sCmd + ' 地图号 X Y',
'移动到指定地图(支持权限分配,小于最大权限受受禁止传送地图列表限制)');
RefGameMasterCmd(@g_GameCommand.RECALL,
'@' + g_GameCommand.RECALL.sCmd + ' 人物名称',
'将指定人物召唤到身边(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.REGOTO,
'@' + g_GameCommand.REGOTO.sCmd + ' 人物名称',
'跟踪指定人物(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.TING,
'@' + g_GameCommand.TING.sCmd + ' 人物名称',
'将指定人物随机传送(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SUPERTING,
'@' + g_GameCommand.SUPERTING.sCmd + ' 人物名称 范围大小',
'将指定人物身边指定范围内的人物随机传送(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.MAPMOVE,
'@' + g_GameCommand.MAPMOVE.sCmd + ' 源地图号 目标地图号',
'将整个地图中的人物移动到其它地图中(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.INFO,
'@' + g_GameCommand.INFO.sCmd + ' 人物名称',
'看人物信息(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.HUMANLOCAL,
'@' + g_GameCommand.HUMANLOCAL.sCmd + ' 地图号',
'查询人物IP所在地区(需加载IP地区查询插件)(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.VIEWWHISPER,
'@' + g_GameCommand.VIEWWHISPER.sCmd + ' 人物名称',
'查看指定人物的私聊信息(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.MOBLEVEL,
'@' + g_GameCommand.MOBLEVEL.sCmd,
'查看身边角色信息(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.MOBCOUNT,
'@' + g_GameCommand.MOBCOUNT.sCmd + ' 地图号',
'查看地图中怪物数量(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.HUMANCOUNT,
'@' + g_GameCommand.HUMANCOUNT.sCmd,
'查看身边人数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.Map,
'@' + g_GameCommand.Map.sCmd,
'显示当前所在地图相关信息(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.Level,
'@' + g_GameCommand.Level.sCmd,
'调整自己的等级(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.KICK,
'@' + g_GameCommand.KICK.sCmd + ' 人物名称',
'将指定人物踢下线(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ReAlive,
'@' + g_GameCommand.ReAlive.sCmd + ' 人物名称',
'将指定人物复活(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.KILL,
'@' + g_GameCommand.KILL.sCmd + '人物名称',
'将指定人物或怪物杀死(杀怪物时需面对怪物)(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CHANGEJOB,
'@' + g_GameCommand.CHANGEJOB.sCmd + ' 人物名称 职业类型(Warr Wizard Taos)',
'调整人物的职业(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.FREEPENALTY,
'@' + g_GameCommand.FREEPENALTY.sCmd + ' 人物名称',
'清除指定人物的PK值(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.PKPOINT,
'@' + g_GameCommand.PKPOINT.sCmd + ' 人物名称',
'查看指定人物的PK值(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.IncPkPoint,
'@' + g_GameCommand.IncPkPoint.sCmd + ' 人物名称 点数',
'增加指定人物的PK值(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CHANGEGENDER,
'@' + g_GameCommand.CHANGEGENDER.sCmd + ' 人物名称 性别(男、女)',
'调整人物的性别(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.HAIR,
'@' + g_GameCommand.HAIR.sCmd + ' 类型值',
'更改指定人物的头发类型(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.BonusPoint,
'@' + g_GameCommand.BonusPoint.sCmd + ' 人物名称 属性点数',
'调整人物的属性点数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELBONUSPOINT,
'@' + g_GameCommand.DELBONUSPOINT.sCmd + ' 人物名称',
'删除人物的属性点数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.RESTBONUSPOINT,
'@' + g_GameCommand.RESTBONUSPOINT.sCmd + ' 人物名称',
'将人物的属性点数重新分配(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SETPERMISSION,
'@' + g_GameCommand.SETPERMISSION.sCmd + ' 人物名称 权限等级(0 - 10)',
'调整人物的权限等级,可以将普通人物升为GM权限(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.RENEWLEVEL,
'@' + g_GameCommand.RENEWLEVEL.sCmd + ' 人物名称 点数(为空则查看)',
'调整查看人物的转生等级(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELGOLD,
'@' + g_GameCommand.DELGOLD.sCmd + ' 人物名称 数量',
'删除人物指定数量的金币(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ADDGOLD,
'@' + g_GameCommand.ADDGOLD.sCmd + ' 人物名称 数量',
'增加人物指定数量的金币(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.GAMEGOLD,
'@' + g_GameCommand.GAMEGOLD.sCmd + ' 人物名称 控制符(+ - =) 数量',
'调整人物的传奇币数量(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.GAMEPOINT,
'@' + g_GameCommand.GAMEPOINT.sCmd + ' 人物名称 控制符(+ - =) 数量',
'调整人物的游戏点数量(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CREDITPOINT,
'@' + g_GameCommand.CREDITPOINT.sCmd + ' 人物名称 控制符(+ - =) 点数',
'调整人物的声望点数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.REFINEWEAPON,
'@' + g_GameCommand.REFINEWEAPON.sCmd + ' 攻击力 魔法力 道术 准确度',
'调整身上武器属性(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ADJUESTLEVEL,
'@' + g_GameCommand.ADJUESTLEVEL.sCmd + ' 人物名称 等级',
'调整指定人物的等级(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ADJUESTEXP,
'@' + g_GameCommand.ADJUESTEXP.sCmd + ' 人物名称 经验值',
'调整指定人物的经验值(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CHANGEDEARNAME,
'@' + g_GameCommand.CHANGEDEARNAME.sCmd +
' 人物名称 配偶名称(如果为 无 则清除)',
'更改指定人物的配偶名称(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CHANGEMASTERNAME,
'@' + g_GameCommand.CHANGEMASTERNAME.sCmd +
' 人物名称 师徒名称(如果为 无 则清除)',
'更改指定人物的师徒名称(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.RECALLMOB,
'@' + g_GameCommand.RECALLMOB.sCmd + ' 怪物名称 数量 召唤等级',
'召唤指定怪物为宝宝(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.TRAINING,
'@' + g_GameCommand.TRAINING.sCmd + ' 人物名称 技能名称 修炼等级(0-3)',
'调整人物的技能修炼等级(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.TRAININGSKILL,
'@' + g_GameCommand.TRAININGSKILL.sCmd +
' 人物名称 技能名称 修炼等级(0-3)',
'给指定人物增加技能(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELETESKILL,
'@' + g_GameCommand.DELETESKILL.sCmd + ' 人物名称 技能名称(All)',
'删除人物的技能,All代表删除全部技能(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELETEITEM,
'@' + g_GameCommand.DELETEITEM.sCmd + ' 人物名称 物品名称 数量',
'删除人物身上指定的物品(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CLEARMISSION,
'@' + g_GameCommand.CLEARMISSION.sCmd + ' 人物名称',
'清除人物的任务标志(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.AddGuild,
'@' + g_GameCommand.AddGuild.sCmd + ' 行会名称 掌门人',
'新建一个行会(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELGUILD,
'@' + g_GameCommand.DELGUILD.sCmd + ' 行会名称',
'删除一个行会(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CHANGESABUKLORD,
'@' + g_GameCommand.CHANGESABUKLORD.sCmd + ' 行会名称',
'更改城堡所属行会(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.FORCEDWALLCONQUESTWAR,
'@' + g_GameCommand.FORCEDWALLCONQUESTWAR.sCmd,
'强行开始/停止攻城战(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.CONTESTPOINT,
'@' + g_GameCommand.CONTESTPOINT.sCmd + ' 行会名称',
'查看行会争霸赛得分情况(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.STARTCONTEST,
'@' + g_GameCommand.STARTCONTEST.sCmd,
'开始行会争霸赛(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ENDCONTEST,
'@' + g_GameCommand.ENDCONTEST.sCmd,
'结束行会争霸赛(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ANNOUNCEMENT,
'@' + g_GameCommand.ANNOUNCEMENT.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.MOB,
'@' + g_GameCommand.MOB.sCmd + ' 怪物名称 数量',
'在身边放置指定类型数量的怪物(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.Mission,
'@' + g_GameCommand.Mission.sCmd + ' X Y',
'设置怪物的集中点(举行怪物攻城用)(支持权限分配');
RefGameMasterCmd(@g_GameCommand.MobPlace,
'@' + g_GameCommand.MobPlace.sCmd + ' X Y 怪物名称 怪物数量',
'在当前地图指定XY放置怪物(支持权限分配(先必须设置怪物的集中点),放置的怪物大刀守卫不会攻击这些怪物');
RefGameMasterCmd(@g_GameCommand.CLEARMON,
'@' + g_GameCommand.CLEARMON.sCmd +
' 地图号(* 为所有) 怪物名称(* 为所有) 掉物品(0,1)',
'清除地图中的怪物(支持权限分配'')');
RefGameMasterCmd(@g_GameCommand.DISABLESENDMSG,
'@' + g_GameCommand.DISABLESENDMSG.sCmd + ' 人物名称',
'将指定人物加入发言过滤列表,加入列表后自己发的文字自己可以看到,其他人看不到(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.ENABLESENDMSG,
'@' + g_GameCommand.ENABLESENDMSG.sCmd,
'将指定人物从发言过滤列表中删除(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DISABLESENDMSGLIST,
'@' + g_GameCommand.DISABLESENDMSGLIST.sCmd,
'查看发言过滤列表中的内容(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SHUTUP,
'@' + g_GameCommand.SHUTUP.sCmd + ' 人物名称',
'将指定人物禁言(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.RELEASESHUTUP,
'@' + g_GameCommand.RELEASESHUTUP.sCmd + ' 人物名称',
'将指定人物从禁言列表中删除(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SHUTUPLIST,
'@' + g_GameCommand.SHUTUPLIST.sCmd,
'查看禁言列表中的内容(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SABUKWALLGOLD,
'@' + g_GameCommand.SABUKWALLGOLD.sCmd,
'查看城堡金币数(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.STARTQUEST,
'@' + g_GameCommand.STARTQUEST.sCmd,
'开始提问功能,游戏中所有人同时跳出问题窗口(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DENYIPLOGON,
'@' + g_GameCommand.DENYIPLOGON.sCmd + ' IP地址 是否永久封(0,1)',
'将指定IP地址加入禁止登录列表,以这些IP登录的用户将无法进入游戏(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DENYACCOUNTLOGON,
'@' + g_GameCommand.DENYACCOUNTLOGON.sCmd + ' 登录帐号 是否永久封(0,1)',
'将指定登录帐号加入禁止登录列表,以此帐号登录的用户将无法进入游戏(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DENYCHARNAMELOGON,
'@' + g_GameCommand.DENYCHARNAMELOGON.sCmd + ' 人物名称 是否永久封(0,1)',
'将指定人物名称加入禁止登录列表,此人物将无法进入游戏(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELDENYIPLOGON,
'@' + g_GameCommand.DELDENYIPLOGON.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELDENYACCOUNTLOGON,
'@' + g_GameCommand.DELDENYACCOUNTLOGON.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.DELDENYCHARNAMELOGON,
'@' + g_GameCommand.DELDENYCHARNAMELOGON.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SHOWDENYIPLOGON,
'@' + g_GameCommand.SHOWDENYIPLOGON.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SHOWDENYACCOUNTLOGON,
'@' + g_GameCommand.SHOWDENYACCOUNTLOGON.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SHOWDENYCHARNAMELOGON,
'@' + g_GameCommand.SHOWDENYCHARNAMELOGON.sCmd,
'(支持权限分配)');
RefGameMasterCmd(@g_GameCommand.SETMAPMODE,
'@' + g_GameCommand.SETMAPMODE.sCmd,
'设置地图模式');
RefGameMasterCmd(@g_GameCommand.SHOWMAPMODE,
'@' + g_GameCommand.SHOWMAPMODE.sCmd,
'显示地图模式');
RefGameMasterCmd(@g_GameCommand.Attack,
'@' + g_GameCommand.Attack.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.LUCKYPOINT,
'@' + g_GameCommand.LUCKYPOINT.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.CHANGELUCK,
'@' + g_GameCommand.CHANGELUCK.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.HUNGER,
'@' + g_GameCommand.HUNGER.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.NAMECOLOR,
'@' + g_GameCommand.NAMECOLOR.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.TRANSPARECY,
'@' + g_GameCommand.TRANSPARECY.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.LEVEL0,
'@' + g_GameCommand.LEVEL0.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.CHANGEITEMNAME,
'@' + g_GameCommand.CHANGEITEMNAME.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.ADDTOITEMEVENT,
'@' + g_GameCommand.ADDTOITEMEVENT.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.ADDTOITEMEVENTASPIECES,
'@' + g_GameCommand.ADDTOITEMEVENTASPIECES.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.ItemEventList,
'@' + g_GameCommand.ItemEventList.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.STARTINGGIFTNO,
'@' + g_GameCommand.STARTINGGIFTNO.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.DELETEALLITEMEVENT,
'@' + g_GameCommand.DELETEALLITEMEVENT.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.STARTITEMEVENT,
'@' + g_GameCommand.STARTITEMEVENT.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.ITEMEVENTTERM,
'@' + g_GameCommand.ITEMEVENTTERM.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.OPDELETESKILL,
'@' + g_GameCommand.OPDELETESKILL.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.CHANGEWEAPONDURA,
'@' + g_GameCommand.CHANGEWEAPONDURA.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.SBKDOOR,
'@' + g_GameCommand.SBKDOOR.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.SPIRIT,
'@' + g_GameCommand.SPIRIT.sCmd,
'');
RefGameMasterCmd(@g_GameCommand.SPIRITSTOP,
'@' + g_GameCommand.SPIRITSTOP.sCmd,
'');
end;
procedure TfrmGameCmd.RefGameDebugCmd(GameCmd: pTGameCmd; sCmdParam, sDesc:
string);
begin
Inc(nRefGameDebugIndex);
if StringGridGameMasterCmd.RowCount - 1 < nRefGameDebugIndex then
begin
StringGridGameDebugCmd.RowCount := nRefGameDebugIndex + 1;
end;
StringGridGameDebugCmd.Cells[0, nRefGameDebugIndex] := GameCmd.sCmd;
StringGridGameDebugCmd.Cells[1, nRefGameDebugIndex] :=
IntToStr(GameCmd.nPermissionMin) + '/' + IntToStr(GameCmd.nPermissionMax);
StringGridGameDebugCmd.Cells[2, nRefGameDebugIndex] := sCmdParam;
StringGridGameDebugCmd.Cells[3, nRefGameDebugIndex] := sDesc;
StringGridGameDebugCmd.Objects[0, nRefGameDebugIndex] := TObject(GameCmd);
end;
procedure TfrmGameCmd.RefDebugCommand;
var
GameCmd : pTGameCmd;
begin
EditGameDebugCmdOK.Enabled := False;
// StringGridGameDebugCmd.RowCount:=41;
GameCmd := @g_GameCommand.SHOWFLAG;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.SETFLAG;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.SHOWOPEN;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.SETOPEN;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.SHOWUNIT;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.SETUNIT;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.MOBNPC;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.DELNPC;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.LOTTERYTICKET;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.RELOADADMIN;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载管理员列表');
GameCmd := @g_GameCommand.ReLoadNpc;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载NPC脚本');
GameCmd := @g_GameCommand.RELOADMANAGE;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载登录脚本');
GameCmd := @g_GameCommand.RELOADROBOTMANAGE;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载机器人配置');
GameCmd := @g_GameCommand.RELOADROBOT;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载机器人脚本');
GameCmd := @g_GameCommand.RELOADMONITEMS;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载怪物爆率配置');
GameCmd := @g_GameCommand.RELOADDIARY;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'未使用');
GameCmd := @g_GameCommand.RELOADITEMDB;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载物品数据库');
GameCmd := @g_GameCommand.RELOADMAGICDB;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'未使用');
GameCmd := @g_GameCommand.RELOADMONSTERDB;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载怪物数据库');
GameCmd := @g_GameCommand.RELOADMINMAP;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载小地图配置');
GameCmd := @g_GameCommand.RELOADGUILD;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.RELOADGUILDALL;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.RELOADLINENOTICE;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载游戏公告信息');
GameCmd := @g_GameCommand.RELOADABUSE;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'重新加载脏话过滤配置');
GameCmd := @g_GameCommand.BACKSTEP;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.RECONNECTION;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'将指定人物重新切换网络连接');
GameCmd := @g_GameCommand.DISABLEFILTER;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'禁用脏话过滤功能');
GameCmd := @g_GameCommand.CHGUSERFULL;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.CHGZENFASTSTEP;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.OXQUIZROOM;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.BALL;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.FIREBURN;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.TESTFIRE;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.TESTSTATUS;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.TESTGOLDCHANGE;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.GSA;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.TESTGA;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'');
GameCmd := @g_GameCommand.MAPINFO;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'显示地图信息');
GameCmd := @g_GameCommand.CLEARBAG;
RefGameDebugCmd(GameCmd,
'@' + GameCmd.sCmd,
'清除背包全部物品');
end;
procedure TfrmGameCmd.StringGridGameMasterCmdClick(Sender: TObject);
var
nIndex : Integer;
GameCmd : pTGameCmd;
begin
nIndex := StringGridGameMasterCmd.Row;
GameCmd := pTGameCmd(StringGridGameMasterCmd.Objects[0, nIndex]);
if GameCmd <> nil then
begin
EditGameMasterCmdName.Text := GameCmd.sCmd;
EditGameMasterCmdPerMission.Value := GameCmd.nPermissionMin;
LabelGameMasterCmdParam.Caption := StringGridGameMasterCmd.Cells[2, nIndex];
LabelGameMasterCmdFunc.Caption := StringGridGameMasterCmd.Cells[3, nIndex];
end;
EditGameMasterCmdOK.Enabled := False;
end;
procedure TfrmGameCmd.EditGameMasterCmdNameChange(Sender: TObject);
begin
EditGameMasterCmdOK.Enabled := True;
EditGameMasterCmdSave.Enabled := True;
end;
procedure TfrmGameCmd.EditGameMasterCmdPerMissionChange(Sender: TObject);
begin
EditGameMasterCmdOK.Enabled := True;
EditGameMasterCmdSave.Enabled := True;
end;
procedure TfrmGameCmd.EditGameMasterCmdOKClick(Sender: TObject);
var
nIndex : Integer;
GameCmd : pTGameCmd;
sCmd : string;
nPermission : Integer;
begin
sCmd := Trim(EditGameMasterCmdName.Text);
nPermission := EditGameMasterCmdPerMission.Value;
if sCmd = '' then
begin
Application.MessageBox('命令名称不能为空!!!', '提示信息', MB_OK +
MB_ICONERROR);
EditGameMasterCmdName.SetFocus;
exit;
end;
nIndex := StringGridGameMasterCmd.Row;
GameCmd := pTGameCmd(StringGridGameMasterCmd.Objects[0, nIndex]);
if GameCmd <> nil then
begin
GameCmd.sCmd := sCmd;
GameCmd.nPermissionMin := nPermission;
end;
RefGameMasterCommand();
end;
procedure TfrmGameCmd.EditGameMasterCmdSaveClick(Sender: TObject);
begin
EditGameMasterCmdSave.Enabled := False;
{$IF SoftVersion <> VERDEMO}
CommandConf.WriteString('Command', 'ObServer', g_GameCommand.OBSERVER.sCmd);
CommandConf.WriteString('Command', 'GameMaster',
g_GameCommand.GAMEMASTER.sCmd);
CommandConf.WriteString('Command', 'SuperMan', g_GameCommand.SUEPRMAN.sCmd);
CommandConf.WriteString('Command', 'StorageClearPassword',
g_GameCommand.CLRPASSWORD.sCmd);
CommandConf.WriteString('Command', 'Who', g_GameCommand.WHO.sCmd);
CommandConf.WriteString('Command', 'Total', g_GameCommand.TOTAL.sCmd);
CommandConf.WriteString('Command', 'Make', g_GameCommand.MAKE.sCmd);
CommandConf.WriteString('Command', 'PositionMove',
g_GameCommand.POSITIONMOVE.sCmd);
CommandConf.WriteString('Command', 'Move', g_GameCommand.Move.sCmd);
CommandConf.WriteString('Command', 'Recall', g_GameCommand.RECALL.sCmd);
CommandConf.WriteString('Command', 'ReGoto', g_GameCommand.REGOTO.sCmd);
CommandConf.WriteString('Command', 'Ting', g_GameCommand.TING.sCmd);
CommandConf.WriteString('Command', 'SuperTing', g_GameCommand.SUPERTING.sCmd);
CommandConf.WriteString('Command', 'MapMove', g_GameCommand.MAPMOVE.sCmd);
CommandConf.WriteString('Command', 'Info', g_GameCommand.INFO.sCmd);
CommandConf.WriteString('Command', 'HumanLocal',
g_GameCommand.HUMANLOCAL.sCmd);
CommandConf.WriteString('Command', 'ViewWhisper',
g_GameCommand.VIEWWHISPER.sCmd);
CommandConf.WriteString('Command', 'MobLevel', g_GameCommand.MOBLEVEL.sCmd);
CommandConf.WriteString('Command', 'MobCount', g_GameCommand.MOBCOUNT.sCmd);
CommandConf.WriteString('Command', 'HumanCount',
g_GameCommand.HUMANCOUNT.sCmd);
CommandConf.WriteString('Command', 'Map', g_GameCommand.Map.sCmd);
CommandConf.WriteString('Command', 'Level', g_GameCommand.Level.sCmd);
CommandConf.WriteString('Command', 'Kick', g_GameCommand.KICK.sCmd);
CommandConf.WriteString('Command', 'ReAlive', g_GameCommand.ReAlive.sCmd);
CommandConf.WriteString('Command', 'Kill', g_GameCommand.KILL.sCmd);
CommandConf.WriteString('Command', 'ChangeJob', g_GameCommand.CHANGEJOB.sCmd);
CommandConf.WriteString('Command', 'FreePenalty',
g_GameCommand.FREEPENALTY.sCmd);
CommandConf.WriteString('Command', 'PkPoint', g_GameCommand.PKPOINT.sCmd);
CommandConf.WriteString('Command', 'IncPkPoint',
g_GameCommand.IncPkPoint.sCmd);
CommandConf.WriteString('Command', 'ChangeGender',
g_GameCommand.CHANGEGENDER.sCmd);
CommandConf.WriteString('Command', 'Hair', g_GameCommand.HAIR.sCmd);
CommandConf.WriteString('Command', 'BonusPoint',
g_GameCommand.BonusPoint.sCmd);
CommandConf.WriteString('Command', 'DelBonuPoint',
g_GameCommand.DELBONUSPOINT.sCmd);
CommandConf.WriteString('Command', 'RestBonuPoint',
g_GameCommand.RESTBONUSPOINT.sCmd);
CommandConf.WriteString('Command', 'SetPermission',
g_GameCommand.SETPERMISSION.sCmd);
CommandConf.WriteString('Command', 'ReNewLevel',
g_GameCommand.RENEWLEVEL.sCmd);
CommandConf.WriteString('Command', 'DelGold', g_GameCommand.DELGOLD.sCmd);
CommandConf.WriteString('Command', 'AddGold', g_GameCommand.ADDGOLD.sCmd);
CommandConf.WriteString('Command', 'GameGold', g_GameCommand.GAMEGOLD.sCmd);
CommandConf.WriteString('Command', 'GamePoint', g_GameCommand.GAMEPOINT.sCmd);
CommandConf.WriteString('Command', 'CreditPoint',
g_GameCommand.CREDITPOINT.sCmd);
CommandConf.WriteString('Command', 'RefineWeapon',
g_GameCommand.REFINEWEAPON.sCmd);
CommandConf.WriteString('Command', 'AdjuestTLevel',
g_GameCommand.ADJUESTLEVEL.sCmd);
CommandConf.WriteString('Command', 'AdjuestExp',
g_GameCommand.ADJUESTEXP.sCmd);
CommandConf.WriteString('Command', 'ChangeDearName',
g_GameCommand.CHANGEDEARNAME.sCmd);
CommandConf.WriteString('Command', 'ChangeMasterrName',
g_GameCommand.CHANGEMASTERNAME.sCmd);
CommandConf.WriteString('Command', 'RecallMob', g_GameCommand.RECALLMOB.sCmd);
CommandConf.WriteString('Command', 'Training', g_GameCommand.TRAINING.sCmd);
CommandConf.WriteString('Command', 'OpTraining',
g_GameCommand.TRAININGSKILL.sCmd);
CommandConf.WriteString('Command', 'DeleteSkill',
g_GameCommand.DELETESKILL.sCmd);
CommandConf.WriteString('Command', 'DeleteItem',
g_GameCommand.DELETEITEM.sCmd);
CommandConf.WriteString('Command', 'ClearMission',
g_GameCommand.CLEARMISSION.sCmd);
CommandConf.WriteString('Command', 'AddGuild', g_GameCommand.AddGuild.sCmd);
CommandConf.WriteString('Command', 'DelGuild', g_GameCommand.DELGUILD.sCmd);
CommandConf.WriteString('Command', 'ChangeSabukLord',
g_GameCommand.CHANGESABUKLORD.sCmd);
CommandConf.WriteString('Command', 'ForcedWallConQuestWar',
g_GameCommand.FORCEDWALLCONQUESTWAR.sCmd);
CommandConf.WriteString('Command', 'ContestPoint',
g_GameCommand.CONTESTPOINT.sCmd);
CommandConf.WriteString('Command', 'StartContest',
g_GameCommand.STARTCONTEST.sCmd);
CommandConf.WriteString('Command', 'EndContest',
g_GameCommand.ENDCONTEST.sCmd);
CommandConf.WriteString('Command', 'Announcement',
g_GameCommand.ANNOUNCEMENT.sCmd);
CommandConf.WriteString('Command', 'MobLevel', g_GameCommand.MOBLEVEL.sCmd);
CommandConf.WriteString('Command', 'Mission', g_GameCommand.Mission.sCmd);
CommandConf.WriteString('Command', 'MobPlace', g_GameCommand.MobPlace.sCmd);
CommandConf.WriteInteger('Permission', 'GameMaster',
g_GameCommand.GAMEMASTER.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ObServer',
g_GameCommand.OBSERVER.nPermissionMin);
CommandConf.WriteInteger('Permission', 'SuperMan',
g_GameCommand.SUEPRMAN.nPermissionMin);
CommandConf.WriteInteger('Permission', 'StorageClearPassword',
g_GameCommand.CLRPASSWORD.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Who',
g_GameCommand.WHO.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Total',
g_GameCommand.TOTAL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MakeMin',
g_GameCommand.MAKE.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MakeMax',
g_GameCommand.MAKE.nPermissionMax);
CommandConf.WriteInteger('Permission', 'PositionMoveMin',
g_GameCommand.POSITIONMOVE.nPermissionMin);
CommandConf.WriteInteger('Permission', 'PositionMoveMax',
g_GameCommand.POSITIONMOVE.nPermissionMax);
CommandConf.WriteInteger('Permission', 'MoveMin',
g_GameCommand.Move.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MoveMax',
g_GameCommand.Move.nPermissionMax);
CommandConf.WriteInteger('Permission', 'Recall',
g_GameCommand.RECALL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ReGoto',
g_GameCommand.REGOTO.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Ting',
g_GameCommand.TING.nPermissionMin);
CommandConf.WriteInteger('Permission', 'SuperTing',
g_GameCommand.SUPERTING.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MapMove',
g_GameCommand.MAPMOVE.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Info',
g_GameCommand.INFO.nPermissionMin);
CommandConf.WriteInteger('Permission', 'HumanLocal',
g_GameCommand.HUMANLOCAL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ViewWhisper',
g_GameCommand.VIEWWHISPER.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MobLevel',
g_GameCommand.MOBLEVEL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MobCount',
g_GameCommand.MOBCOUNT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'HumanCount',
g_GameCommand.HUMANCOUNT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Map',
g_GameCommand.Map.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Level',
g_GameCommand.Level.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Kick',
g_GameCommand.KICK.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ReAlive',
g_GameCommand.ReAlive.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Kill',
g_GameCommand.KILL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ChangeJob',
g_GameCommand.CHANGEJOB.nPermissionMin);
CommandConf.WriteInteger('Permission', 'FreePenalty',
g_GameCommand.FREEPENALTY.nPermissionMin);
CommandConf.WriteInteger('Permission', 'PkPoint',
g_GameCommand.PKPOINT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'IncPkPoint',
g_GameCommand.IncPkPoint.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ChangeGender',
g_GameCommand.CHANGEGENDER.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Hair',
g_GameCommand.HAIR.nPermissionMin);
CommandConf.WriteInteger('Permission', 'BonusPoint',
g_GameCommand.BonusPoint.nPermissionMin);
CommandConf.WriteInteger('Permission', 'DelBonuPoint',
g_GameCommand.DELBONUSPOINT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'RestBonuPoint',
g_GameCommand.RESTBONUSPOINT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'SetPermission',
g_GameCommand.SETPERMISSION.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ReNewLevel',
g_GameCommand.RENEWLEVEL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'DelGold',
g_GameCommand.DELGOLD.nPermissionMin);
CommandConf.WriteInteger('Permission', 'AddGold',
g_GameCommand.ADDGOLD.nPermissionMin);
CommandConf.WriteInteger('Permission', 'GameGold',
g_GameCommand.GAMEGOLD.nPermissionMin);
CommandConf.WriteInteger('Permission', 'GamePoint',
g_GameCommand.GAMEPOINT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'CreditPoint',
g_GameCommand.CREDITPOINT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'RefineWeapon',
g_GameCommand.REFINEWEAPON.nPermissionMin);
CommandConf.WriteInteger('Permission', 'AdjuestTLevel',
g_GameCommand.ADJUESTLEVEL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'AdjuestExp',
g_GameCommand.ADJUESTEXP.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ChangeDearName',
g_GameCommand.CHANGEDEARNAME.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ChangeMasterName',
g_GameCommand.CHANGEMASTERNAME.nPermissionMin);
CommandConf.WriteInteger('Permission', 'RecallMob',
g_GameCommand.RECALLMOB.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Training',
g_GameCommand.TRAINING.nPermissionMin);
CommandConf.WriteInteger('Permission', 'OpTraining',
g_GameCommand.TRAININGSKILL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'DeleteSkill',
g_GameCommand.DELETESKILL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'DeleteItem',
g_GameCommand.DELETEITEM.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ClearMission',
g_GameCommand.CLEARMISSION.nPermissionMin);
CommandConf.WriteInteger('Permission', 'AddGuild',
g_GameCommand.AddGuild.nPermissionMin);
CommandConf.WriteInteger('Permission', 'DelGuild',
g_GameCommand.DELGUILD.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ChangeSabukLord',
g_GameCommand.CHANGESABUKLORD.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ForcedWallConQuestWar',
g_GameCommand.FORCEDWALLCONQUESTWAR.nPermissionMin);
CommandConf.WriteInteger('Permission', 'ContestPoint',
g_GameCommand.CONTESTPOINT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'StartContest',
g_GameCommand.STARTCONTEST.nPermissionMin);
CommandConf.WriteInteger('Permission', 'EndContest',
g_GameCommand.ENDCONTEST.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Announcement',
g_GameCommand.ANNOUNCEMENT.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MobLevel',
g_GameCommand.MOBLEVEL.nPermissionMin);
CommandConf.WriteInteger('Permission', 'Mission',
g_GameCommand.Mission.nPermissionMin);
CommandConf.WriteInteger('Permission', 'MobPlace',
g_GameCommand.MobPlace.nPermissionMin);
{$IFEND}
end;
procedure TfrmGameCmd.StringGridGameDebugCmdClick(Sender: TObject);
var
nIndex : Integer;
GameCmd : pTGameCmd;
begin
nIndex := StringGridGameDebugCmd.Row;
GameCmd := pTGameCmd(StringGridGameDebugCmd.Objects[0, nIndex]);
if GameCmd <> nil then
begin
EditGameDebugCmdName.Text := GameCmd.sCmd;
EditGameDebugCmdPerMission.Value := GameCmd.nPermissionMin;
LabelGameDebugCmdParam.Caption := StringGridGameDebugCmd.Cells[2, nIndex];
LabelGameDebugCmdFunc.Caption := StringGridGameDebugCmd.Cells[3, nIndex];
end;
EditGameDebugCmdOK.Enabled := False;
end;
procedure TfrmGameCmd.EditGameDebugCmdNameChange(Sender: TObject);
begin
EditGameDebugCmdOK.Enabled := True;
EditGameDebugCmdSave.Enabled := True;
end;
procedure TfrmGameCmd.EditGameDebugCmdPerMissionChange(Sender: TObject);
begin
EditGameDebugCmdOK.Enabled := True;
EditGameDebugCmdSave.Enabled := True;
end;
procedure TfrmGameCmd.EditGameDebugCmdOKClick(Sender: TObject);
var
nIndex : Integer;
GameCmd : pTGameCmd;
sCmd : string;
nPermission : Integer;
begin
sCmd := Trim(EditGameDebugCmdName.Text);
nPermission := EditGameDebugCmdPerMission.Value;
if sCmd = '' then
begin
Application.MessageBox('命令名称不能为空!!!', '提示信息', MB_OK +
MB_ICONERROR);
EditGameDebugCmdName.SetFocus;
exit;
end;
nIndex := StringGridGameDebugCmd.Row;
GameCmd := pTGameCmd(StringGridGameDebugCmd.Objects[0, nIndex]);
if GameCmd <> nil then
begin
GameCmd.sCmd := sCmd;
GameCmd.nPermissionMin := nPermission;
end;
RefDebugCommand();
end;
procedure TfrmGameCmd.EditGameDebugCmdSaveClick(Sender: TObject);
begin
EditGameDebugCmdSave.Enabled := False;
end;
end.