Get/Set SAMP Player Color

Code:
:GetSAMPPlayerRGBAColor // 0AB1: @GetSAMPPlayerRGBAColor 1 _OfPlayer 0@ _StoreRGBAColor 31@
if 0AA2: 31@ = load_dynamic_library "samp.dll" // no need to free library
then
    31@ += 0x216378
    0@ *= 4
    005A: 31@ += 0@
    0A8D: 31@ = read_memory 31@ size 4 virtual_protect 0
end
ret 1 31@

Code:
:SetSAMPPlayerRGBAColor // 0AB1: @SetSAMPPlayerRGBAColor 2 _OfPlayer 0@ _IntoRGBAColor 1@
if 0AA2: 31@ = load_dynamic_library "samp.dll" // no need to free library
then
    31@ += 0x216378
    0@ *= 4
    005A: 31@ += 0@
    0A8C: write_memory 31@ size 4 value 1@ virtual_protect 0
end
ret 0
Code:
:GetSAMPPlayerARGBColor // 0AB1: @GetSAMPPlayerARGBColor 1 _OfPlayer 0@ _StoreARGBColor 31@
if 0AA2: 31@ = load_dynamic_library "samp.dll" // no need to free library
then
    31@ += 0x216378
    0@ *= 4
    005A: 31@ += 0@
    0A8D: 31@ = read_memory 31@ size 4 virtual_protect 0
        // ROL(31@,8) = Function Bit Rotate Left 31@ by 8
    0B16: 30@ = 31@ SHL 24
    0B1C: 31@ >>= 8
    0B18: 31@ |= 30@
        //
end
ret 1 31@

Code:
:SetSAMPPlayerARGBColor // 0AB1: @SetSAMPPlayerARGBColor 2 _OfPlayer 0@ _IntoARGBColor 1@
if 0AA2: 31@ = load_dynamic_library "samp.dll" // no need to free library
then
        // ROR(1@,8) = Function Bit Rotate Right 1@ by 8
    0085: 30@ = 1@
    0B1C: 30@ >>= 24
    0B1D: 1@ <<= 8
    0B18: 1@ |= 30@
        //
    31@ += 0x216378
    0@ *= 4
    005A: 31@ += 0@
    0A8C: write_memory 31@ size 4 value 1@ virtual_protect 0
end
ret 0
Code:
{$CLEO}
0000:

const
    TARGETPLAYER = 31@
end
TARGETPLAYER = 998 // set this to the player number you want

wait 10000

while true
    0AB1: @GetSAMPPlayerRGBAColor 1 _OfPlayer TARGETPLAYER _StoreRGBAColor 0@
    0AD1: show_formatted_text_highpriority "Player %d RGBA Color: %X" time 5000 TARGETPLAYER 0@
    wait 5000

    0AB1: @GetSAMPPlayerARGBColor 1 _OfPlayer TARGETPLAYER _StoreARGBColor 0@
    0AD1: show_formatted_text_highpriority "Player %d ARGB Color: %X" time 5000 TARGETPLAYER 0@
    wait 5000

    0AB1: @SetSAMPPlayerRGBAColor 2 _OfPlayer TARGETPLAYER _IntoRGBAColor 0xFF0000FF
    0AD1: show_formatted_text_highpriority "Player %d is now RGBA Red" time 2000 TARGETPLAYER
    
    wait 1000
    0AB1: @SetSAMPPlayerRGBAColor 2 _OfPlayer TARGETPLAYER _IntoRGBAColor 0x00FF00FF
    0AD1: show_formatted_text_highpriority "Player %d is now RGBA Green" time 2000 TARGETPLAYER
    
    wait 1000
    0AB1: @SetSAMPPlayerRGBAColor 2 _OfPlayer TARGETPLAYER _IntoRGBAColor 0x0000FFFF
    0AD1: show_formatted_text_highpriority "Player %d is now RGBA Blue" time 2000 TARGETPLAYER

    wait 1000
    0AB1: @SetSAMPPlayerARGBColor 2 _OfPlayer TARGETPLAYER _IntoARGBColor 0xFFFF0000
    0AD1: show_formatted_text_highpriority "Player %d is now ARGB Red" time 2000 TARGETPLAYER

    wait 1000
    0AB1: @SetSAMPPlayerARGBColor 2 _OfPlayer TARGETPLAYER _IntoARGBColor 0xFF00FF00
    0AD1: show_formatted_text_highpriority "Player %d is now ARGB Green" time 2000 TARGETPLAYER

    wait 1000
    0AB1: @SetSAMPPlayerARGBColor 2 _OfPlayer TARGETPLAYER _IntoARGBColor 0xFF0000FF
    0AD1: show_formatted_text_highpriority "Player %d is now ARGB Blue" time 2000 TARGETPLAYER
    wait 1000
end
 
Top