This is the dot command I use on my shard. It creates a "hand" at the targetted location.
Code:
use uo;
use os;
// These should be in your client.inc file. If not you can add them there and use the include "client"; call instead.
const FONT_NORMAL := 0x03; // Normal (default).
const ANIM_SALUTE := 0x0021; // Salute.
program point (who)
SendSysMessage( who, "Point at what?" );
var it := TargetCoordinates ( who );
var itdesc;
if ( it.item.name )
itdesc := it.item.name;
it := it.item;
elseif ( it.item.desc )
itdesc := it.item.desc;
it := it.item;
elseif ( it.mobile )
itdesc := it.mobile.name;
it := it.mobile;
else
it := CreateItemAtLocation( it.x, it.y, it.z, 0x706c, 1 );
it.name := who.name;
it.graphic := 0x206e;
it.movable := 0;
itdesc := "that spot";
SetObjProperty (it, "destroyme", 1);
endif
if ( it.hidden )
SendSysMessage( who, "Canceled" );
return;
endif
PerformAction ( who, ANIM_SALUTE );
PrintTextAbove ( who, "*points at " + itdesc + "*", FONT_NORMAL, 55);
sleepms (500);
PrintTextAbove ( it, "*" + who.name + " points here*", FONT_NORMAL, 55);
sleep (2);
if ( it.objtype == 0x706c )
if (GetObjProperty (it, "destroyme"))
DestroyItem( it );
endif
endif
endprogram
This compiles in 95 and works very well. Hope it helps you out.