mirror of
https://github.com/edubart/otclient.git
synced 2025-11-30 23:26:51 +01:00
Reimplement text edit scrolling in C++
* And update some corelib APIs
This commit is contained in:
@@ -3,8 +3,22 @@ function OutputMessage:addData(data)
|
||||
self:addU8(NetworkMessageTypes.Boolean)
|
||||
self:addU8(booleantonumber(data))
|
||||
elseif type(data) == 'number' then
|
||||
self:addU8(NetworkMessageTypes.Number)
|
||||
self:addU64(data)
|
||||
if math.isu8(data) then
|
||||
self:addU8(NetworkMessageTypes.U8)
|
||||
self:addU8(data)
|
||||
elseif math.isu16(data) then
|
||||
self:addU8(NetworkMessageTypes.U16)
|
||||
self:addU16(data)
|
||||
elseif math.isu32(data) then
|
||||
self:addU8(NetworkMessageTypes.U32)
|
||||
self:addU32(data)
|
||||
elseif math.isu64(data) then
|
||||
self:addU8(NetworkMessageTypes.U64)
|
||||
self:addU64(data)
|
||||
else -- negative or non integer numbers
|
||||
self:addU8(NetworkMessageTypes.NumberString)
|
||||
self:addString(tostring(data))
|
||||
end
|
||||
elseif type(data) == 'string' then
|
||||
self:addU8(NetworkMessageTypes.String)
|
||||
self:addString(data)
|
||||
@@ -19,9 +33,9 @@ end
|
||||
function OutputMessage:addTable(data)
|
||||
local size = 0
|
||||
|
||||
-- reserve for size
|
||||
-- reserve for size (should be addData, find a way to use it further)
|
||||
local sizePos = self:getWritePos()
|
||||
self:addU32(size)
|
||||
self:addU16(size)
|
||||
local sizeSize = self:getWritePos() - sizePos
|
||||
|
||||
-- add values
|
||||
@@ -34,9 +48,16 @@ function OutputMessage:addTable(data)
|
||||
-- write size
|
||||
local currentPos = self:getWritePos()
|
||||
self:setWritePos(sizePos)
|
||||
self:addU32(size)
|
||||
self:addU16(size)
|
||||
|
||||
-- fix msg size and go back to end
|
||||
self:setMessageSize(self:getMessageSize() - sizeSize)
|
||||
self:setWritePos(currentPos)
|
||||
end
|
||||
end
|
||||
|
||||
function OutputMessage:addColor(color)
|
||||
self:addU8(color.r)
|
||||
self:addU8(color.g)
|
||||
self:addU8(color.b)
|
||||
self:addU8(color.a)
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user