Wasn't working with new interface, after pondering over maths i fixed it 
SCAR Code:
procedure DoEmote(EmoteNumber: Integer);
var
row, X1, Y1, X2, Y2, Others: Integer;
begin
if (not(InRange(EmoteNumber, 1, 45))) then
begin
srl_Warn('DoEmote', 'Invalid EmoteNumber: ' + IntToStr(EmoteNumber) + ', Valid Emotes: 1..45', warn_AllVersions);
Exit;
end;
GameTab(12);
if (InRange(EmoteNumber, 21, 39)) then
begin
if (GetColor(734, 442) = 3029569) then
Mouse(731, 362, 5, 5, True);
EmoteNumber := EmoteNumber - 20;
Others := 10;
end else if (GetColor(733, 224) = 3029569) then
Mouse(727, 224, 5, 5, True);
if (EmoteNumber > 40) then
Begin
Mouse(728, 444, 5, 5, True);
EmoteNumber := EmoteNumber - 28;
end;
if (EmoteNumber > 4) then
begin
repeat;
row := row + 1;
EmoteNumber := EmoteNumber - 4;
until (EmoteNumber <= 4) or (row = 12)
end;
if (row >= 5) then
row := row - 5;
EmoteNumber := EmoteNumber - 1;
X1 := 554 + (43 * EmoteNumber);
Y1 := 211 + (49 * row) + Others;
X2 := 592 + (43 * EmoteNumber);
Y2 := 257 + (49 * row) + Others;
MouseBox(X1 + 10, Y1 + 10, X2 - 10, Y2 - 10, 1);
end;