Log in

View Full Version : quest::itemlink(item_id);


Lillu
08-27-2009, 07:48 PM
I would like an NPC to whisper a message that includes an item link. Possible to use quest::itemlink(item_id); in this way?

like:
sub EVENT_SAY {
my $show = quest::saylink("show",1);
my $artifact = quest::itemlink(item_id);
my $NPCName = $npc->GetCleanName();

if ($text =~/hail/i){
$client->Message(315, "$NPCName whispers to you, 'Hello $name, I can $show you an Artifact if you are interested in it.'");
}
if ($text =~/show/i){
$client->Message(315, "$NPCName whispers to you, 'Well, here is is... $artifact.'");
}
}
This wont work, but any other way to make this happen?

realityincarnate
08-27-2009, 08:21 PM
The quest::varlink command should do what you want. Just use it in place of itemlink.
my $artifact = quest::varlink(item_id);

trevius
08-27-2009, 11:45 PM
I would like an NPC to whisper a message that includes an item link. Possible to use quest::itemlink(item_id); in this way?

like:
sub EVENT_SAY {
my $show = quest::saylink("show",1);
my $artifact = quest::itemlink(item_id);
my $NPCName = $npc->GetCleanName();

if ($text =~/hail/i){
$client->Message(315, "$NPCName whispers to you, 'Hello $name, I can $show you an Artifact if you are interested in it.'");
}
if ($text =~/show/i){
$client->Message(315, "$NPCName whispers to you, 'Well, here is is... $artifact.'");
}
}
This wont work, but any other way to make this happen?

IMO, the varlink command is much more useful, but the itemlink command will do what you are wanting as well, you are just using it wrong.

Here is an example you can try to see how both work. I also changed the saylinks a bit so you can see what can be done with those as well if you want.

sub EVENT_SAY {

my $varlink = quest::saylink("Let me see a varlink, please.", 0, "varlink");
my $itemlink = quest::saylink("Let me see an itemlink, please.", 0, "itemlink");
my $artifact = quest::varlink(1001);
my $NPCName = $npc->GetCleanName();

if ($text =~/hail/i)
{
$client->Message(315, "$NPCName whispers to you, 'Hello $name, I can show you an Artifact using $varlink or $itemlink if you are interested in it.'");
}
if ($text =~/varlink/i)
{
$client->Message(315, "$NPCName whispers to you, 'Well, here it is... $artifact.'");
}
if ($text =~/itemlink/i)
{
quest::itemlink(1001);
}

}

Lillu
08-28-2009, 03:07 AM
Thank you Trev, I wasn't able to find any info on this, but it's good we have you, you are a living wiki.. :)

Many thanks for sharing your teleporter script too (the one updated with saylink feature)!

Lillu
08-28-2009, 03:17 AM
and many thanks to realityincarnate too!