111
This commit is contained in:
@@ -4,10 +4,10 @@
|
||||
创建日期:2025-06-30 09:24
|
||||
文件用途:字节包
|
||||
*/
|
||||
class Packet{
|
||||
class Packet {
|
||||
|
||||
//读取指针位置
|
||||
ReadIndex = 0;
|
||||
Index = 0;
|
||||
|
||||
//内存数据
|
||||
Pointer = null;
|
||||
@@ -16,24 +16,46 @@ class Packet{
|
||||
|
||||
|
||||
//加载包
|
||||
function Load(P,S)
|
||||
{
|
||||
function Load(P, S) {
|
||||
Pointer = P;
|
||||
Size = S;
|
||||
}
|
||||
|
||||
//读取指针跳转
|
||||
function Seek(...) {
|
||||
local Pos = vargv[0];
|
||||
local Mode = 0;
|
||||
if(vargc > 1) Mode = vargv[1];
|
||||
if (Mode == 0) {
|
||||
Index = Pos;
|
||||
} else if (Mode == 1) {
|
||||
Index += Pos;
|
||||
} else if (Mode == 2) {
|
||||
Index -= Pos;
|
||||
}
|
||||
}
|
||||
|
||||
//读取整形
|
||||
function GetInt()
|
||||
{
|
||||
function GetInt() {
|
||||
local Size_t = 4;
|
||||
if(ReadIndex + Size_t > Size){
|
||||
if (Index + Size_t > Size) {
|
||||
print("读取包越界!");
|
||||
return;
|
||||
}
|
||||
local Buf = NativePointer(Pointer).add(ReadIndex).readInt();
|
||||
ReadIndex += Size_t;
|
||||
local Buf = NativePointer(Pointer).add(Index).readInt();
|
||||
Index += Size_t;
|
||||
return Buf;
|
||||
}
|
||||
|
||||
//读取
|
||||
//读取流
|
||||
function GetStream(Size_t) {
|
||||
if (Index + Size_t > Size) {
|
||||
print("读取包越界!");
|
||||
return;
|
||||
}
|
||||
local Np = NativePointer(Pointer).add(Index);
|
||||
Np.Size = Size_t;
|
||||
Index += Size_t;
|
||||
return Np;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user