|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Quests::Q&A This is the quest support section |
03-22-2010, 06:49 PM
|
Fire Beetle
|
|
Join Date: Dec 2009
Location: VA
Posts: 18
|
|
$client->movepc?
is there any equivalent client function like quest::movepc? I'm storing an array of client names and basically if a timer expires i want force a movepc on them all.
So basically.
-client enters proximity and added to list.
-timer starts
-if client exit proximity delete from list
-timer expires
-now move anyone still in the list away
so using:
$client = $entity_list->GetClientByName($namefromlist)
I can get the client I just don't know how to move them. Any ideas?
|
03-22-2010, 07:34 PM
|
Fire Beetle
|
|
Join Date: Dec 2009
Location: VA
Posts: 18
|
|
awesome thanks. are these functions case sensitive?
|
03-22-2010, 08:01 PM
|
|
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
Yes, all quest objects are case sensitive.
|
03-22-2010, 08:38 PM
|
Fire Beetle
|
|
Join Date: Dec 2009
Location: VA
Posts: 18
|
|
hmm it doesnt seem to work.
Code:
$c = $entity_list->GetClientByName($player);
if ($c) {
quest::say('Trying to move ' . $player);
$c->MovePC(19, 456, 825, 9);
}
I see the say but no move occurs. Am I doing something wrong? I am using the current peq downloads. Is the function possibly disabled?
|
03-22-2010, 08:43 PM
|
|
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
If you are using one of the entity list searches, you should just have to do something like this:
Code:
my @clientlist = $entity_list->GetClientList();
foreach $ent (@clientlist)
{
my $ClientName = $ent->GetName();
quest::say("Trying to move $ClientName.");
$ent->MovePC(19, 456, 825, 9);
}
|
03-22-2010, 08:59 PM
|
Fire Beetle
|
|
Join Date: Dec 2009
Location: VA
Posts: 18
|
|
well I already have the names stored previously that is why I was using GetClientByName. The if($c) passes and I am able to do a $c->GetName() to verify I do indeed have the client but the move just fails. I will modify it to something more like you have and see if anything changes.
Thanks.
|
03-22-2010, 10:56 PM
|
Fire Beetle
|
|
Join Date: Dec 2009
Location: VA
Posts: 18
|
|
Quote:
Originally Posted by trevius
If you are using one of the entity list searches, you should just have to do something like this:
Code:
my @clientlist = $entity_list->GetClientList();
foreach $ent (@clientlist)
{
my $ClientName = $ent->GetName();
quest::say("Trying to move $ClientName.");
$ent->MovePC(19, 456, 825, 9);
}
|
Ok I tried it like you said but same result. I don't know if the function is just broken. I guess I'll have to find a different way to do this. Has anyone else successfully used this function?
|
03-22-2010, 11:17 PM
|
Hill Giant
|
|
Join Date: Feb 2008
Posts: 116
|
|
Try $ent->MovePC(19, 456, 825, 9, 1);
It seems to require the ignore restrictions 0/1 flag.
|
03-22-2010, 11:31 PM
|
Fire Beetle
|
|
Join Date: Dec 2009
Location: VA
Posts: 18
|
|
Quote:
Originally Posted by nenelan
Try $ent->MovePC(19, 456, 825, 9, 1);
It seems to require the ignore restrictions 0/1 flag.
|
That was it! you da man!
I had tried with $ent->MovePC(19, 456, 825, 9, 0, false); but didn't really know what they were for.
Thanks for the help guys.
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 08:28 PM.
|
|
|
|
|
|
|
|
|
|
|
|
|