So - a bit of a spoiler - but this is what I've got so far...
/////////////////////////////////////
// SHAMUS MENU
/////////////////////////////////////
func OpenDialogShamusMenu()
{
GamePause(1);
select = RunDialogSelect( gs_fid("DialogShamusMenu"), 3, 0 );
if(select==0)
{
idx = ObjFind(1231);
}
else
if(select==1)
{
idx = ObjFind(1149);
}
else
if(select==2)
{
idx = ObjFind(1137);
}
GamePause(0);
if (idx == (ObjFind(1231)))
{Message26(3,0,"THE GOLF BALL?\nOK SO!");
Message26(4,3,"I'VE NOT BEEN ASKED\nBACK TO CADDY SINCE\n1964 ANYWAY!");
MessagePop();
PickupObject(idx);
}
if (idx == (ObjFind(1149)))
{Message26(3,1,"TOILET ROLL?");
Message26(4,2,"NO MATTER,\nI TOOK IT\nFROM ME GUEST-HOUSE\nJACKS ANWAY!");
MessagePop();
PickupObject(idx);
}
if (idx == (ObjFind(1137)))
{Message26(3,1,"ME BELOVED HAT?");
Message26(4,3,"NO BOTHER...SOB\nIT'S YOURS!");
GameCommand(CMD_REFRESH);
MessagePop();
PickupObject(idx);
shamus = BrushFind(45873492);
shamus2 = BrushFind(45873496);
hat = BrushFind(45873493);
BrushSet(shamus,B_DRAW,0);
BrushSet(shamus2,B_DRAW,3);
BrushSet(hat,B_DRAW,0);
Message26(4,3," BUT BEFORE YOU ASK \nI BEAT THAT CHICKEN..");
Message26(4,3," BUT BEFORE YOU ASK \nI BEAT THAT CHICKEN..\nAND DON'T BE LISTENING\nTO ANYONE WHO'D\nTELL YOU OTHERWISE!");
}
shamus = BrushFind(45873492);
shamus2 = BrushFind(45873496);
hat = BrushFind(45873493);
wall1 = BrushFind(45873494);
wall2 = BrushFind(45873495);
wall3 = BrushFind(45873498);
Message26(13,5,"ANYWAYS\nENOUGH OF THIS,");
Message26(3,7,"I NEED TO BE GOING.\nJUST ONE LAST THING...");
Message26(5,9," YOU MUST NEVER ");
Message26(5,9," YOU MUST NEVER \nNEVER EVER");
Message26(5,9," YOU MUST NEVER \nNEVER EVER\nEVER");
Message26(5,9," YOU MUST NEVER \nNEVER EVER\nEVER\nENTER THE HENGE!");
BrushSet(shamus,B_DRAW,0);
BrushSet(shamus2,B_DRAW,0);
BrushSet(hat,B_DRAW,0);
BrushSet(wall1,B_DRAW,0);
BrushSet(wall2,B_DRAW,0);
BrushSet(wall3,B_DRAW,0);
idx = ObjFind(24422992);
ObjSet(idx,O_DISABLE,0);
idx = ObjFind(4422992);
ObjSet(idx,O_DISABLE,0);
GameCommand(CMD_REFRESH);
MessagePop();
}
func DialogShamusMenu(select)
{
tile1 = "{c:ffffff}{t:1231 0 -5} {c:ff0000}";
tile2 = "{c:ffffff} {t:1149 0 -5} {c:ff0000}";
tile3 = "{c:ffffff} {t:1137 0 -5} {c:ff0000}";
text = "{a:center}{c:0xff00c800}ANY ONE YOU FANCY!\n\n\n{c:0xff00c800}";
if(select==0) text += tile1 + "{f:1}A GOLF BALL {f:0}\n\n"; else text += tile1 + "{c:0xff00c800}A GOLF BALL \n\n";
if(select==1) text += tile2 + "{f:1}T-ROLL {f:0}\n\n"; else text += tile2 + "{c:0xff00c800}T-ROLL \n\n";
if(select==2) text += tile3 + "{f:1}ME BEST HAT {f:0}\n"; else text += tile3 + "{c:0xff00c800}ME BEST HAT \n";
DialogPush();
DialogSetText(text);
DialogSetColor(0xff005800);
DialogFitCenter();
}