Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- global TEXT_DRAW_POOL_OFFSET := 0x10
- global SAMP_MAX_PLAYERTEXTDRAWS := 256
- global SAMP_MAX_TEXTDRAWS := 2048
- global iRefreshTD := 0
- global iUpdateTickTD := 1000
- global oTextDraws := []
- updateTextDraws() {
- if (!checkHandles())
- return 0
- if (iRefreshTD + iUpdateTickTD > A_TickCount)
- return 1
- oTextDraws := []
- iRefreshTD := A_TickCount
- dwAddress := readDWORD(hGTA, dwSAMP + SAMP_INFO_OFFSET)
- if (ErrorLevel || !dwAddress) {
- ErrorLevel := ERROR_READ_MEMORY
- return 0
- }
- dwAddress := readDWORD(hGTA, dwAddress + SAMP_PPOOLS_OFFSET)
- if (ErrorLevel || !dwAddress) {
- ErrorLevel := ERROR_READ_MEMORY
- return 0
- }
- dwTextDraw := readDWORD(hGTA, dwAddress + TEXT_DRAW_POOL_OFFSET)
- if (ErrorLevel || !dwTextDraw) {
- ErrorLevel := ERROR_READ_MEMORY
- return 0
- }
- Loop, % SAMP_MAX_TEXTDRAWS ; Normal TextDraws
- {
- i := A_Index - 1
- dwIsActive := readDWORD(hGTA, dwTextDraw + i * 4)
- if (ErrorLevel) {
- ErrorLevel := ERROR_READ_MEMORY
- return 0
- }
- if (!dwIsActive)
- continue
- dwAddr := readDWORD(hGTA, dwTextDraw + i * 4 + (4 * (SAMP_MAX_PLAYERTEXTDRAWS + SAMP_MAX_TEXTDRAWS)))
- if (ErrorLevel) {
- ErrorLevel := ERROR_READ_MEMORY
- return 0
- }
- if (!dwAddr)
- continue
- sText := readString(hGTA, dwAddr, 800)
- if (ErrorLevel) {
- ErrorLevel := ERROR_READ_MEMORY
- return 0
- }
- oTextDraws[i] := sText
- }
- ErrorLevel := ERROR_OK
- return 1
- }
- printTextDraws() {
- if (!updateTextDraws())
- return
- oReplace := ["~s~", "~r~", "~w~", "~h~", "~g~", "~y~", "~n~", "~b~", " ", " "]
- For i, o in oTextDraws
- {
- Loop % oReplace.MaxIndex() {
- o := StrReplace(o, oReplace[A_Index], " ")
- }
- AddChatMessage(o)
- }
- return
- }
- getTextDrawBySubstring(substring) {
- if (!updateTextDraws())
- return
- oReplace := ["~s~", "~r~", "~w~", "~h~", "~g~", "~y~", "~n~", "~b~", " ", " "]
- For i, o in oTextDraws
- {
- if (!InStr(o, substring))
- continue
- Loop % oReplace.MaxIndex()
- o := StrReplace(o, oReplace[A_Index], " ")
- return o
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement