|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Quests::Custom Custom Quests here |
10-12-2012, 04:30 PM
|
Demi-God
|
|
Join Date: Mar 2012
Posts: 1,103
|
|
Account Based Flagging
Here is an example of how we do our account based flagging system over at NL, I'd post the actual context we use, but its basically proprietary to our system.
Code:
sub EVENT_SAY {
my $t = $client->AccountID();
my $globalname = "$t";
if ($text =~/hail/i) {
plugin::whisper("$t");
}
if ($text =~/account/i) {
quest::setglobal("$t",1,7,'F');
quest::say("Flag set");
}
if (defined $qglobals{$globalname}) {
if ($qglobals{$globalname} == 1) {
if ($text =~/test/i) {
plugin::Whisper("You are Account Flagged");
}
}
}
}
__________________
"No, thanks, man. I don't want you fucking up my life, too."
Skype:
Comerian1
|
|
|
|
10-16-2012, 11:27 AM
|
Demi-God
|
|
Join Date: Mar 2012
Posts: 1,103
|
|
Code:
#Velious Keeper Clean Up Gummi
sub EVENT_SAY {
my $gi = quest::saylink ("give",1);
my $t = $client->AccountID();
my $ent = quest::saylink ("I wish to enter Velious!");
my $zone0 = quest::saylink ("Wakening Lands",1);
my $zone1 = quest::saylink ("Iceclad Ocean", 1);
my $zone2 = quest::saylink ("Cobalt Scar", 1);
my $zone3 = quest::saylink ("Eastern Wastelands", 1);
my $zone4 = quest::saylink ("Great Divide", 1);
my $zone5 = quest::saylink ("Thurgadin", 1);
my $spirits = quest::saylink ("spirits", 1);
my $globalname = "flagging";
my $globalname2 = "$t";
my $gc = quest::saylink ("guild's",1);
my $npc1 = quest::saylink ("Phara Dar",1);
my $npc2 = quest::saylink ("Druushk",1);
my $npc3 = quest::saylink ("Nexona",1);
my $npc4 = quest::saylink ("Silverwing",1);
my $npc5 = quest::saylink ("Hoshkar",1);
my $npc6 = quest::saylink ("Xygoz",1);
my $npc7 = quest::saylink ("Gorenaire",1);
my $npc8 = quest::saylink ("Trakanon",1);
my $npc9 = quest::saylink ("Severilous",1);
my $npc10 = quest::saylink ("Faydedar",1);
my $npc11 = quest::saylink ("Talendor",1);
my $globalname4 = "$uguild_id Phara Dar";
my $globalname5 = "$uguild_id Druushk";
my $globalname6 = "$uguild_id Nexona";
my $globalname7 = "$uguild_id Silverwing";
my $globalname8 = "$uguild_id Hoshkar";
my $globalname9 = "$uguild_id Xygoz";
my $globalname10 = "$uguild_id Gorenaire";
my $globalname11 = "$uguild_id Trakanon";
my $globalname12 = "$uguild_id Severilous";
my $globalname13 = "$uguild_id Faydedar";
my $globalname14 = "$uguild_id Talendor";
#my $uguild_id = $client->GuildID();
if($text=~/testkills/i)
{
quest::setglobal("$uguild_id Xygoz",1,7,'F');
#quest::setglobal("Druushk",1,5,'F');
}
if($text=~/Remove/i)
{
quest::say($globalname4);
}
if($text =~/guild's/i)
{
$client->Message(335,"[$npc1]");
$client->Message(335,"[$npc2]");
$client->Message(335,"[$npc3]");
$client->Message(335,"[$npc4]");
$client->Message(335,"[$npc5]");
$client->Message(335,"[$npc6]");
$client->Message(335,"[$npc7]");
$client->Message(335,"[$npc8]");
$client->Message(335,"[$npc9]");
$client->Message(335,"[$npc10]");
$client->Message(335,"[$npc11]");
}
#("Phara Dar");
#("Druushk");
#("Nexona");
#("Silverwing");
#("Hoshkar");
#("Xygoz");
#("Gorenaire");
#("Trakanon");
#("Severilous");
# ("Faydedar");
# ("Talendor");
if($text=~/Phara Dar/i)
{
if($qglobals{$globalname4} == 0) # This portion means it will tell you in red if the npc declared above has not been killed by your guild, or if it has
{
$client->Message(13,"$npc1 has not been slain!");
}
if($qglobals{$globalname4} == 1)
{
$client->Message(14,"$npc1 has been slain!");
}
}
if($text=~/Druushk/i)
{
if($qglobals{$globalname5} == 0)
{
$client->Message(13,"$npc2 has not been slain!");
}
if($qglobals{$globalname5} == 1)
{
$client->Message(14,"$npc2 has been slain!");
}
}
if($text=~/Nexona/i)
{
if($qglobals{$globalname6} == 0)
{
$client->Message(13,"$npc3 has not been slain!");
}
if($qglobals{$globalname6} == 1)
{
$client->Message(14,"$npc3 has been slain!");
}
}
if($text=~/Silverwing/i)
{
if($qglobals{$globalname7} == 0)
{
$client->Message(13,"$npc4 has not been slain!");
}
if($qglobals{$globalname7} == 1)
{
$client->Message(14,"$npc4 has been slain!");
}
}
if($text=~/Hoshkar/i)
{
if($qglobals{$globalname8} == 0)
{
$client->Message(13,"$npc5 has not been slain!");
}
if($qglobals{$globalname8} == 1)
{
$client->Message(14,"$npc5 has been slain!");
}
}
if($text=~/Xygoz/i)
{
if($qglobals{$globalname9} == 0)
{
$client->Message(13,"$npc6 has not been slain!");
}
if($qglobals{$globalname9} == 1)
{
$client->Message(14,"$npc6 has been slain!");
}
}
if($text=~/Gorenaire/i)
{
if($qglobals{$globalname10} == 0)
{
$client->Message(13,"$npc7 has not been slain!");
}
if($qglobals{$globalname10} == 1)
{
$client->Message(14,"$npc7 has been slain!");
}
}
if($text=~/Trakanon/i)
{
if($qglobals{$globalname11} == 0)
{
$client->Message(13,"$npc8 has not been slain!");
}
if($qglobals{$globalname11} == 1)
{
$client->Message(14,"$npc8 has been slain!");
}
}
if($text=~/Severilous/i)
{
if($qglobals{$globalname12} == 0)
{
$client->Message(13,"$npc9 has not been slain!");
}
if($qglobals{$globalname12} == 1)
{
$client->Message(14,"$npc9 has been slain!");
}
}
if($text=~/Faydedar/i)
{
if($qglobals{$globalname13} == 0)
{
$client->Message(13,"$npc10 has not been slain!");
}
if($qglobals{$globalname13} == 1)
{
$client->Message(14,"$npc10 has been slain!");
}
}
if($text=~/Talendor/i)
{
if($qglobals{$globalname14} == 0)
{
$client->Message(13,"$npc11 has not been slain!");
}
if($qglobals{$globalname14} == 1)
{
$client->Message(14,"$npc11 has been slain!");
}
}
if (defined $qglobals{$globalname}) {
if ($qglobals{$globalname} == 1) {
if ($text =~/hail/i) {
plugin::Whisper("Greetin`s $name, Heard ya wanna enter the lands of Velious? If another instance of your soul has been there I can [$gi] you access or check your [$gc] progression. ");
$client->Message(13,"$ent");
}
if ($text =~/enter Velious/i) {
plugin::Whisper("First, you must prove you are worthy. If you show yourself to be powerful enough to slay the Ring of Scale, I shall invite you to begin your journey into the new world, but I must see the insignia of Velious as proof!");
#quest::assigntask(2033);
}
}
}
if (defined $qglobals{$globalname}) {
if ($qglobals{$globalname} >= 2) {
if ($text =~/hail/i) {
plugin::Whisper("Well hello there $name. Would you like to go to [$zone0], [$zone1], [$zone2], [$zone3], or [$zone4], I can also allow your other [$spirits] to access these lands. ");
}
if ($text =~/spirits/i) {
plugin::Whisper("Please leave this world and come back for the magic to affect your spirit.");
quest::setglobal("$globalname2",2,7,'F');
}
if ($text =~/Iceclad Ocean/i) {
quest::say ("$name , stand close to me while I cast..");
quest::emote ("moves his hands as if chanting...");
quest::zone(iceclad);
}
if ($text =~/Eastern Wastelands/i) {
quest::say ("$name , stand close to me while I cast..");
quest::emote ("moves his hands as if chanting...");
quest::zone(eastwastes);
}
if ($text =~/Great Divide/i) {
quest::say ("$name , stand close to me while I cast..");
quest::emote ("moves his hands as if chanting...");
quest::zone(greatdivide);
}
if ($text =~/Thurgadin/i) {
quest::say ("$name , stand close to me while I cast..");
quest::emote ("moves his hands as if chanting...");
quest::zone(thurgadina)
}
if ($text =~/wakening lands/i) {
quest::say ("$name , stand close to me while I cast..");
quest::emote ("moves his hands as if chanting...");
quest::zone(wakening);
}
if ($text =~/cobalt scar/i) {
quest::say ("$name , stand close to me while I cast..");
quest::emote ("moves his hands as if chanting...");
quest::zone(wakening);
}
}
}
if (defined $qglobals{$globalname2}) {
if ($qglobals{$globalname2} == 2) {#this sets the flag for the account, and also the flags for the zone.
if ($text =~/give/i) {
plugin::Whisper("You have the account flag of $t.");
$client->Message(14,"Now setting character zone flags");
quest::setglobal("$globalname",2,5,'F');
quest::summonitem(132661);
quest::set_zone_flag(87);#1 burning woods
quest::set_zone_flag(103);#2 chardok
quest::set_zone_flag(90);#3 City of mist
quest::set_zone_flag(104);#4 dalnir
quest::set_zone_flag(86);#5 dreadlands
quest::set_zone_flag(106);#6 cabeast
quest::set_zone_flag(82);#7 cabwest
quest::set_zone_flag(94);#8 emeraldjungle
quest::set_zone_flag(78);#9 fieldofbone
quest::set_zone_flag(84);#10 firiona
quest::set_zone_flag(92);#11 frontiermtns
quest::set_zone_flag(105);#12 charasis
quest::set_zone_flag(88);#13 kaesora
quest::set_zone_flag(102);#14 karnor
quest::set_zone_flag(97);#15 Kurn
quest::set_zone_flag(85);#16 lakeofillomen
quest::set_zone_flag(107);#17 nurga
quest::set_zone_flag(89);#18 sebilis
quest::set_zone_flag(91);#19 skyfire
quest::set_zone_flag(83);#20 swampofnohope
quest::set_zone_flag(96);#21 timorous
quest::set_zone_flag(95);#22 trakanon
quest::set_zone_flag(108);#23 veeshan
quest::set_zone_flag(79);#24 warsliks
#quest::set_zone_flag(81);#25 droga
quest::set_zone_flag(93);#26 overthere
quest::set_zone_flag(117);#Velious start
quest::set_zone_flag(121);
quest::set_zone_flag(116);
quest::set_zone_flag(111);
quest::set_zone_flag(118);
quest::set_zone_flag(127);
quest::set_zone_flag(110);
quest::set_zone_flag(181);
quest::set_zone_flag(113);
quest::set_zone_flag(126);
quest::set_zone_flag(123);
quest::set_zone_flag(75 );
quest::set_zone_flag(125);
quest::set_zone_flag(114);
quest::set_zone_flag(128);
quest::set_zone_flag(124);
quest::set_zone_flag(115);
quest::set_zone_flag(129);
quest::set_zone_flag(112);
quest::set_zone_flag(119);
quest::set_zone_flag(120);
quest::set_zone_flag(114);#velious end
}
}
}
}
sub EVENT_ITEM {
if(plugin::check_handin(\%itemcount,132661 => 1)) { #on handin of our custom token it flags for all older expansions and our current
quest::set_zone_flag(87);#1 burning woods
quest::set_zone_flag(103);#2 chardok
quest::set_zone_flag(90);#3 City of mist
quest::set_zone_flag(104);#4 dalnir
quest::set_zone_flag(86);#5 dreadlands
quest::set_zone_flag(106);#6 cabeast
quest::set_zone_flag(82);#7 cabwest
quest::set_zone_flag(94);#8 emeraldjungle
quest::set_zone_flag(78);#9 fieldofbone
quest::set_zone_flag(84);#10 firiona
quest::set_zone_flag(92);#11 frontiermtns
quest::set_zone_flag(105);#12 charasis
quest::set_zone_flag(88);#13 kaesora
quest::set_zone_flag(102);#14 karnor
quest::set_zone_flag(97);#15 Kurn
quest::set_zone_flag(85);#16 lakeofillomen
quest::set_zone_flag(107);#17 nurga
quest::set_zone_flag(89);#18 sebilis
quest::set_zone_flag(91);#19 skyfire
quest::set_zone_flag(83);#20 swampofnohope
quest::set_zone_flag(96);#21 timorous
quest::set_zone_flag(95);#22 trakanon
quest::set_zone_flag(108);#23 veeshan
quest::set_zone_flag(79);#24 warsliks
#quest::set_zone_flag(81);#25 droga
quest::set_zone_flag(93);#26 overthere
quest::set_zone_flag(117);#Velious start
quest::set_zone_flag(121);
quest::set_zone_flag(116);
quest::set_zone_flag(111);
quest::set_zone_flag(118);
quest::set_zone_flag(127);
quest::set_zone_flag(110);
quest::set_zone_flag(181);
quest::set_zone_flag(113);
quest::set_zone_flag(126);
quest::set_zone_flag(123);
quest::set_zone_flag(75 );
quest::set_zone_flag(125);
quest::set_zone_flag(114);
quest::set_zone_flag(128);
quest::set_zone_flag(124);
quest::set_zone_flag(115);
quest::set_zone_flag(129);
quest::set_zone_flag(112);
quest::set_zone_flag(119);
quest::set_zone_flag(120);
quest::set_zone_flag(114);#velious end
if(plugin::check_handin(\%itemcount,132661 => 1)) {
if ($qglobals{flagging} >= 2 ) {
$client->Message(15,"You are already flagged to enter Velious zones");
quest::summonitem(132661);
}
if ($qglobals{flagging} < 2 ) {
$client->Message(15,"You are now flagged to enter Velious zones");
quest::setglobal("flagging", 2, 5, "F");
quest::summonitem(132661);
}
}
else {
plugin::return_items(\%itemcount);
plugin::Whisper("I don't need this!");
}
}
}
To issue a guild based flag
Code:
sub EVENT_KILLED_MERIT
{
quest::setglobal("$uguild_id Phara Dar",1,7,'F');
}
will effectively show Phara Dar has been killed! when the saylink is either said or clicked for pharadar
__________________
"No, thanks, man. I don't want you fucking up my life, too."
Skype:
Comerian1
|
|
|
|
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 09:00 AM.
|
|
|
|
|
|
|
|
|
|
|
|
|