DecodeString: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
Patrick2562 (talk | contribs) |
||
Line 26: | Line 26: | ||
Returns the decoded string if successful, ''false'' otherwise. If a callback was provided, the decoded string is argument to the callback. | Returns the decoded string if successful, ''false'' otherwise. If a callback was provided, the decoded string is argument to the callback. | ||
==Example== | ==Example== | ||
{{ | Adds an ''/decode'' command in which you can provide an algorithm, key and data to decode. | ||
<section name="Server" class="server" show="true"> | |||
<syntaxhighlight lang="lua"> | |||
addCommandHandler("decode", | |||
function(player, _, algorithm, key, ...) | |||
if algorithm and key then | |||
local text = table.concat({...}, " ") | |||
if type(text) == "string" and text ~= "" then | |||
local decoded = decodeString(algorithm, text, { key = key }) | |||
if decoded then | |||
outputChatBox("The result of " .. algorithm .. " decoding is: " .. decoded, player) | |||
else | |||
outputChatBox("Failed to decode. Make sure that all arguments are valid.", player, 255, 0, 0) | |||
end | |||
else | |||
outputChatBox("Please specify text in the command.", player, 255, 0, 0) | |||
end | |||
else | |||
outputChatBox("Invalid algorithm and/or key.", player, 255, 0, 0) | |||
end | |||
end | |||
) | |||
</syntaxhighlight> | |||
==See Also== | ==See Also== | ||
{{Utility functions}} | {{Utility functions}} |
Revision as of 16:44, 26 January 2020
This function decodes an encoded string using the specified algorithm. The counterpart of this function is encodeString.
Syntax
string decodeString ( string algorithm, string input, table options [, function callback ] )
Required Arguments
- algorithm: The algorithm to use.
- input: The input to decode.
- options: A table with options and other neccessary data for the algorithm, as detailed below.
Options for each algorithm
- tea (Tiny Encryption Algorithm)
- key: A key to decode the input with.
Optional Arguments
- callback: providing a callback will run this function asynchronously, the arguments to the callback are the same as the returned values below.
Returns
Returns the decoded string if successful, false otherwise. If a callback was provided, the decoded string is argument to the callback.
Example
Adds an /decode command in which you can provide an algorithm, key and data to decode.
<section name="Server" class="server" show="true">
addCommandHandler("decode", function(player, _, algorithm, key, ...) if algorithm and key then local text = table.concat({...}, " ") if type(text) == "string" and text ~= "" then local decoded = decodeString(algorithm, text, { key = key }) if decoded then outputChatBox("The result of " .. algorithm .. " decoding is: " .. decoded, player) else outputChatBox("Failed to decode. Make sure that all arguments are valid.", player, 255, 0, 0) end else outputChatBox("Please specify text in the command.", player, 255, 0, 0) end else outputChatBox("Invalid algorithm and/or key.", player, 255, 0, 0) end end )
See Also
- addDebugHook
- base64Decode
- base64Encode
- debugSleep
- decodeString
- encodeString
- fromJSON
- generateKeyPair
- getColorFromString
- getDevelopmentMode
- getDistanceBetweenPoints2D
- getDistanceBetweenPoints3D
- getEasingValue
- getNetworkStats
- getNetworkUsageData
- getPerformanceStats
- getRealTime
- getTickCount
- getTimerDetails
- getTimers
- getFPSLimit
- getUserdataType
- getVersion
- gettok
- isTransferBoxVisible
- setTransferBoxVisible
- hash
- inspect
- interpolateBetween
- iprint
- isOOPEnabled
- isTimer
- killTimer
- md5
- passwordHash
- passwordVerify
- pregFind
- pregMatch
- pregReplace
- removeDebugHook
- resetTimer
- setDevelopmentMode
- setFPSLimit
- setTimer
- ref
- deref
- sha256
- split
- teaDecode
- teaEncode
- toJSON
- tocolor
- getProcessMemoryStats
- utfChar
- utfCode
- utfLen
- utfSeek
- utfSub
- bitAnd
- bitNot
- bitOr
- bitXor
- bitTest
- bitLRotate
- bitRRotate
- bitLShift
- bitRShift
- bitArShift
- bitExtract
- bitReplace