|
|
 |
 |
 |
 |
|
 |
 |
|
 |
 |
|
 |
|
Quests::Q&A This is the quest support section |

07-28-2008, 10:38 PM
|
Hill Giant
|
|
Join Date: May 2008
Location: Colorado
Posts: 238
|
|
Thanks. I've looked at both scripts and experimented a bit with them, but can't seem to figure out what's going on with them (nothing like this in the Lexicon).
|
 |
|
 |

07-28-2008, 10:55 PM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
This is part of a script I made by using the Tunare script as an example and it works perfectly:
Code:
sub EVENT_ATTACK {
my $guardian_one = $entity_list->GetMobByNpcTypeID(2700500);
my $guardian_two = $entity_list->GetMobByNpcTypeID(2700501);
my $guardian_three = $entity_list->GetMobByNpcTypeID(2700502);
my $guardian_four = $entity_list->GetMobByNpcTypeID(2700503);
my $guardian_five = $entity_list->GetMobByNpcTypeID(2700504);
my $guardian_six = $entity_list->GetMobByNpcTypeID(2120410);
if ($guardian_one) {
my $hate_guardian_one = $guardian_one->CastToNPC();
$hate_guardian_one->AddToHateList($client, 1); }
if ($guardian_two) {
my $hate_guardian_two = $guardian_two->CastToNPC();
$hate_guardian_two->AddToHateList($client, 1); }
if ($guardian_three) {
my $hate_guardian_three = $guardian_three->CastToNPC();
$hate_guardian_three->AddToHateList($client, 1); }
if ($guardian_four) {
my $hate_guardian_four = $guardian_four->CastToNPC();
$hate_guardian_four->AddToHateList($client, 1); }
if ($guardian_five) {
my $hate_guardian_five = $guardian_five->CastToNPC();
$hate_guardian_five->AddToHateList($client, 1); }
if ($guardian_six) {
my $hate_guardian_six = $guardian_six->CastToNPC();
$hate_guardian_six->AddToHateList($client, 1); }
}
|
 |
|
 |
 |
|
 |

07-28-2008, 11:29 PM
|
Hill Giant
|
|
Join Date: May 2008
Location: Colorado
Posts: 238
|
|
Thanks Trevius,
My event is a SAY, not an ATTACK. The player hails the king to trigger the guards. The guards do not attack if the player is turning in the Grail. They also do not attack if the player has ally status--only when he is less than ally and has no grail to turn in. Would it then be something like?
Quote:
sub EVENT_SAY
{
if($text=~/hail/i)
{
if(plugin::check_hasitem($client, 13732))
{
quest::say("What is this? You bring good tidings indeed, $name! Give me the Grail, and together we shall defeat the Enemy. As for you, $name . . . be assured that you shall not fail to be rewarded for showing such kindness to our Kingdom. Your stature and your bank will be increased, and you will be made a full citizen of the Kingdom. But come now; we must act quickly. Give me the Grail.");
}
elsif($faction >= 2)
{
my $guard_one = $entity_list->GetMobByNpcTypeID(999139);
my $guard_two = $entity_list->GetMobByNpcTypeID(999140);
if ($guard_one) {
my $hate_guard_one = $guard_one->CastToNPC();
$hate_guard_one->AddToHateList($client, 1); }
if ($guard_two) {
my $hate_guard_two = $guard_two->CastToNPC();
$hate_guard_two->AddToHateList($client, 1);
quest::say("Why should I suffer the likes of you? You shall pay for your presumptuousness.");
quest::shout("GUARDS!");
}
else
{
quest::say("Do you not see I have enough [trouble] already? Why should I welcome you, $name? For your welcome here is doubtful");
}
}
|
|
 |
|
 |
 |
|
 |

07-28-2008, 11:59 PM
|
 |
Developer
|
|
Join Date: Aug 2006
Location: USA
Posts: 5,946
|
|
Do you mean if they have the grail in their inventory AND they have ally faction? Or if they have the grail OR ally faction? Do they need both to keep from being attacked, or just either one?
If they need both, I think it should be something like this:
Code:
sub EVENT_SAY {
if($text=~/hail/i) {
if(plugin::check_hasitem($client, 13732)&&($faction >= 2)) {
quest::say("What is this? You bring good tidings indeed, $name! Give me the Grail, and together we shall defeat the Enemy. As for you, $name . . . be assured that you shall not fail to be rewarded for showing such kindness to our Kingdom. Your stature and your bank will be increased, and you will be made a full citizen of the Kingdom. But come now; we must act quickly. Give me the Grail."); }
else {
quest::say("Why should I suffer the likes of you? You shall pay for your presumptuousness.");
quest::shout("GUARDS!");
my $guard_one = $entity_list->GetMobByNpcTypeID(999139);
my $guard_two = $entity_list->GetMobByNpcTypeID(999140);
if ($guard_one) {
my $hate_guard_one = $guard_one->CastToNPC();
$hate_guard_one->AddToHateList($client, 1); }
if ($guard_two) {
my $hate_guard_two = $guard_two->CastToNPC();
$hate_guard_two->AddToHateList($client, 1); }
}
}
}
|
 |
|
 |

07-29-2008, 12:23 AM
|
Hill Giant
|
|
Join Date: May 2008
Location: Colorado
Posts: 238
|
|
Quote:
Originally Posted by trevius
Do you mean if they have the grail in their inventory AND they have ally faction? Or if they have the grail OR ally faction? Do they need both to keep from being attacked, or just either one?
|
Either one. They can be dubious, but if they have the grail, they won't be attacked. If they are ally and have no grail they won't be attacked. They are attacked only if the have no ally status AND they have no grail.
|

07-29-2008, 12:51 AM
|
Hill Giant
|
|
Join Date: May 2008
Location: Colorado
Posts: 238
|
|
I used your script and made the proper adjustments, and it is working now. Thanks Trevius, you're awesome!
|

07-29-2008, 07:17 AM
|
Hill Giant
|
|
Join Date: May 2008
Location: Colorado
Posts: 238
|
|
On a related note, is this basically the same script I would use if I want all of a certain npctype in a zone to attack a player who enters that zone if he has the grail in his inventory. Is there an Event that could trigger an attack upon zone entry, perhaps with a 15-sec delay to give the unsuspecting player time to move away from zonelines?
|
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 04:30 PM.
|
|
 |
|
 |
|
|
|
 |
|
 |
|
 |