📄 managerinterpreter.pas
字号:
}
function TrltManagerInterpreter.CallGetScore(RoundNo,
WheelNo: integer): TRoundScord;
var
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asGetRoundScord;
WriteVariant(RoundNo, Data);
WriteVariant(WheelNo, Data);
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(Result, Size);
end;
function TrltManagerInterpreter.CallGetWheelParams: TWheelParams;
var
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asWheelParams;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(Result, Size);
end;
procedure TrltManagerInterpreter.DoWheelParams(const Data: IDataBlock);
var
Size : integer;
I : integer;
begin
{ Data.Read(Size, sizeof(Size));
Data.Read(rlt.WheelParams, Size);
rlt.UpdateWheelParams;
}
end;
procedure TrltManagerInterpreter.DoLoginManager(const Data: IDataBlock);
begin
end;
function TrltManagerInterpreter.CallGetRoundInfo: TRoundInfo;
var
I : integer;
RoundInfo : TRoundInfo;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
if RoundMonitorForm = nil then Exit;
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asGetRoundInfo;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(Result, Size);
end;
function TrltManagerInterpreter.CallPlayerEdit(
APlayerEditInfo: TPlayerEditInfo): TPlayerEditInfo;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Size := Sizeof(APlayerEditInfo);
Data.Write(Size, Sizeof(Size));
Data.Write(APlayerEditInfo, Size);
Data.Signature := CallSig or asPlayerEdit;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(Result, Size);
end;
function TrltManagerInterpreter.CallGetPlayerList(
APlayerList: TPlayerList): TPlayerList;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Size := Sizeof(TPlayerList);
Data.Write(Size, Sizeof(Size));
Data.Write(APlayerList, Size);
if APlayerList.Data <> nil then
Data.Write(APlayerList.Data^, APlayerList.Size);
Data.Signature := CallSig or asPlayerList;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(Result, Size);
GetMem(Result.Data, Result.Size);
FillChar(Result.Data^, Result.Size, #0);
Data.Read(Result.Data^, Result.Size);
end;
function TrltManagerInterpreter.CallSetRoundResult(AColorIndex: integer):boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
WriteVariant(AColorIndex, Data);
Data.Signature := CallSig or asSetRoundResult;
Data := FSendDataBlock.Send(Data, True);
Result := ReadVariant(Flays, Data);
end;
procedure TrltManagerInterpreter.DoException(const Data: IDataBlock);
begin
// inherited;
// nothing;
end;
function TrltManagerInterpreter.CallSetGameParams(
AGameParams: TGameParams): boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
Flays : TVarFlags;
begin
Result := false;
Data := TDataBlock.Create as IDataBlock;
Size := sizeof(AGameParams);
Data.Write(Size , sizeof(Size));
Data.Write(AGameParams, Size);
Data.Signature := CallSig or asSetGameParams;
Data := FSendDataBlock.Send(Data, True);
Result := ReadVariant(Flays, Data);
end;
function TrltManagerInterpreter.CallGetGameParams(
var AGameParams: TGameParams): boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
Flays : TVarFlags;
begin
Result := false;
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asGetGameParams;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size , sizeof(Size));
Data.Read(AGameParams, Size);
Result := true;
end;
function TrltManagerInterpreter.CallSetRoundState(
ARoundState: TRoundState): boolean;
var
Data: IDataBlock;
VarSize : integer;
VarFlag : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
VarSize := Sizeof(ARoundState);
Data.Write(VarSize, Sizeof(VarSize));
Data.Write(ARoundState, VarSize);
Data.Signature := CallSig or asSetRoundState;
Data := FSendDataBlock.Send(Data, True);
Result := ReadVariant(VarFlag, Data);
end;
function TrltManagerInterpreter.CallSetPlayerList(
const APlayerList: TPlayerList): boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Size := Sizeof(TPlayerList);
Data.Write(Size, Sizeof(Size));
Data.Write(APlayerList, Size);
if APlayerList.Data <> nil then
Data.Write(APlayerList.Data^, APlayerList.Size);
Data.Signature := CallSig or asUploadPlayerList;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Result := boolean(Size);
// Result := ReadVariant(Flays, Data);
end;
function TrltManagerInterpreter.CallGetRoundInfoLog(
var AArrayofRoundInfo: TArrayofRoundInfo): integer;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asGetRoundLog;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
if Size > Sizeof(Result) then raise Exception.Create('数据返回格式错误。');
Data.Read(Result, Size); //大小
Data.Read(Size, sizeof(Size));
if Size > Sizeof(AArrayofRoundInfo) then raise Exception.Create('数据返回格式错误。');
Data.Read(AArrayofRoundInfo, Size);
end;
function TrltManagerInterpreter.CallGetPlayerBetLog(
var AArrayofPlayerBetLog: TArrayofPlayerBetInfo): integer;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asGetPlayerBetLog;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(Result, Size); //大小
Data.Read(Size, sizeof(Size));
Data.Read(AArrayofPlayerBetLog, Size);
end;
function TrltManagerInterpreter.CallClearPlayerBetInfoLog: boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asClearPlayerBetLog;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(s, Size); //大小
Result := boolean(s);
end;
function TrltManagerInterpreter.CallClearRoundInfoLog: boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asClearGameLog;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(s, Size); //大小
Result := boolean(s);
end;
function TrltManagerInterpreter.CallClearPlayerList: boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : boolean;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
Data.Signature := CallSig or asClearPlayerList;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(s, Size); //大小
Result := boolean(s);
end;
function TrltManagerInterpreter.CallCheckAdmin(Tag: integer;
AdminStr: String): boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : integer;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
WriteVariant(Tag, Data);
WriteVariant(AdminStr, Data);
Data.Signature := CallSig or asCheckAdmin;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(s, Size); //大小
Result := boolean(s);
end;
function TrltManagerInterpreter.CallSetLock(Lock: boolean): boolean;
var
I : integer;
Data: IDataBlock;
Size : integer;
s : integer;
Flays : TVarFlags;
begin
Data := TDataBlock.Create as IDataBlock;
WriteVariant(Lock, Data);
Data.Signature := CallSig or asLockServer;
Data := FSendDataBlock.Send(Data, True);
Data.Read(Size, sizeof(Size));
Data.Read(s, Size); //大小
Result := boolean(s);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -