View Single Post
  #1  
Old 07-20-2009, 09:56 PM
neiv2
Hill Giant
 
Join Date: Mar 2009
Location: CO
Posts: 183
Default Require expert qglobal Help

I need a bit of help with understanding why a certain part of my qglobal is not working properly. I'm posting (below) the entire quest script (player.pl in the C:\EQEmu\quests\templates folder) just in case it's need. You can scroll past the sub EVENT_ENTERZONE section to the sub EVENT_TIMER--and in particular to the "if ($qglobals{kingdomfaction} == 1)" section under that EVENT--which is where the issue is.

Every "positive" action in that section works as it should: i.e., (1) it checks the faction of the player and sets a global flag for them that casts the correct level buff to members of the faction who hold the ring, and it changes the flag and stops casting buffs to the members of the faction that lost the ring; (2) it simultaneously confers guild membership ("quest::setguild(1,1);") to those of the right faction.

However, for some reason it doesn't perform the corresponding "negative" actions that follow loss of the ring, such as fading the buff of those who are now of the wrong faction ("$client->BuffFadeBySpellID();"), or changing their guild membership to the designated guild ("quest::setguild(0,1);").

Any help would be most appreciated.

Code:
sub EVENT_ENTERZONE 
	{
	my $zone_music_end = 'cscript.exe /nologo C:\EQEmu\quests\music\stop.vbs';
	system("$zone_music_end");

	$client->Message(15, "You have entered $zoneln.");
	if(plugin::check_hasitem($client, 13732))
		{
		my $wraith_music = 'C:\EQEmu\quests\music\runwraith.vbs';
		
		system("$wraith_music");
		$client->SetPVP(1);
		quest::signal(999281,0);
		
		quest::settimer("aggro",20);
		$client->Message(257, (quest::ChooseRandom("A mysterious voice whispers to you, 'I SEEEE YOOUUU!' ","A mysterious voice whispers to you, 'YOU CANNOT HIDE!' ","A mysterious voice whispers to you, 'I'M COMING FOR YOOUUU!' ")));

		quest::we(15, "You sense the ring has been found. It is now in the vicinity of $zoneln.");
		}

	else
		{
		quest::settimer("check",1);
		
		my $zone_music_a = 'C:\EQEmu\quests\music\runa.vbs';    # 11 - runnyeye
		my $zone_music_b = 

'C:\EQEmu\quests\music\runb.vbs';   	# 117 - cobaltscar
		my $zone_music_c = 'C:\EQEmu\quests\music\runc.vbs';    # 3 - surefall
		my $zone_music_d = 'C:\EQEmu\quests\music\rund.vbs';    # 16 - beholder
		my $zone_music_e = 'C:\EQEmu\quests\music\rune.vbs';    # 15 - eastkarana
		my $zone_music_f = 'C:\EQEmu\quests\music\runf.vbs';  	# 14 - southkarana
		my $zone_music_g = 'C:\EQEmu\quests\music\rung.vbs';    # 4 - qeytoqrg
		my $zone_music_h = 'C:\EQEmu\quests\music\runh.vbs';   	# 181 - jaggedpine
		my $zone_music_i = 'C:\EQEmu\quests\music\runi.vbs';  	# 87 - burningwood
		my $zone_music_j = 'C:\EQEmu\quests\music\runj.vbs';    # 93 - overthere
		my $zone_music_k = 'C:\EQEmu\quests\music\runk.vbs';    # 12 - qey2hh1
		my $zone_music_l = 'C:\EQEmu\quests\music\runl.vbs';    # 2 - qeynos2
		my $zone_music_m = 'C:\EQEmu\quests\music\runm.vbs';    # 1 - qeynos
		my $zone_music_n = 'C:\EQEmu\quests\music\runn.vbs';    # 45 - qcat
		my $zone_music_o = 

'C:\EQEmu\quests\music\runo.vbs';    # 347 - illsalin
		my $zone_music_p = 'C:\EQEmu\quests\music\runp.vbs';    # 50 - rathemtn
		my $zone_music_q = 'C:\EQEmu\quests\music\runq.vbs';  	# 17 - blackburrow
		my $zone_music_r = 'C:\EQEmu\quests\music\runr.vbs'; 	# 79 - warslikswood
		my $zone_music_rr = 'C:\EQEmu\quests\music\runrr.vbs'; 	# randomize
		my $zone_music_rrr = 'C:\EQEmu\quests\music\runrrr.vbs'; # randomize
		my $zone_music_s = 'C:\EQEmu\quests\music\runs.vbs';    # 183 - tutorial
		my $zone_music_t = 'C:\EQEmu\quests\music\runt.vbs';    # 25 - nektulos
		my $zone_music_u = 'C:\EQEmu\quests\music\runu.vbs';    # 263 - mmcg
		my $zone_music_v = 'C:\EQEmu\quests\music\runv.vbs';  	# 13 - northkarana
		my $zone_music_vv = 'C:\EQEmu\quests\music\runvv.vbs';  # randomize
		my $zone_music_w = 'C:\EQEmu\quests\music\runw.vbs'; 	# 92 - frontiermtns
		my $zone_music_ww = 'C:\EQEmu\quests\music\runww.vbs'; 	# randomize
		my $zone_music_www = 'C:\EQEmu\quests\music\runwww.vbs'; # randomize
		my $zone_music_x = 'C:\EQEmu\quests\music\runx.vbs'; 	# 182 - Nedaria
		my $zone_music_y = 'C:\EQEmu\quests\music\runy.vbs'; 	# 54 - Gfay
		my $zone_music_z = 'C:\EQEmu\quests\music\runz.vbs'; 	# 57 - Gfay
		my $zone_music_a1 = 'C:\EQEmu\quests\music\runa1.vbs'; 	# 100 - Stonebrunt

		my @random_music_a = (
			"$zone_music_a"
			);				
		my @random_music_b = (
			"$zone_music_b",
			"$zone_music_vv"
			);
		my @random_music_c = (
			"$zone_music_c"
			);
		my @random_music_d = (
			"$zone_music_d"
			);
		my @random_music_e = (
			"$zone_music_e"
			);
		my @random_music_f = (
			"$zone_music_f"
			);
		my @random_music_g = (
			"$zone_music_g"
			);
		my @random_music_h = (
			"$zone_music_h"
			);
		my @random_music_i = (
			"$zone_music_i"
			);
		my @random_music_j = (
			"$zone_music_j"
			);
		my @random_music_k = (
			"$zone_music_k"
			);
		my @random_music_l = (
			"$zone_music_l"
			);
		my @random_music_m = (
			"$zone_music_m"
			);
		my @random_music_n = (
			"$zone_music_n"
			);
		my @random_music_o = (
			"$zone_music_o"
			);
		my @random_music_p = (
			"$zone_music_p"
			);
		my @random_music_q = (
			"$zone_music_q"
			);
		my @random_music_r = (
			"$zone_music_r",
			"$zone_music_rr",
			"$zone_music_rrr"
			);
		my @random_music_s = (
			"$zone_music_s"
			);
		my @random_music_t = (
			"$zone_music_t"
			);
		my @random_music_u = (
			"$zone_music_u"
			);
		my @random_music_v = (
			"$zone_music_v",
			"$zone_music_vv"
			);								
		my @random_music_w = (
			"$zone_music_w",
			"$zone_music_ww",
			"$zone_music_www"
			);		
		my @random_music_x = (
			"$zone_music_x"
			);		
		my @random_music_y = (
			"$zone_music_y"
			);
		my @random_music_z = (
			"$zone_music_z"
			);
		my @random_music_a1 = (
			"$zone_music_a1"
			);

		my $random_music_a = quest::ChooseRandom(@random_music_a);
		my $random_music_b = quest::ChooseRandom(@random_music_b);
		my $random_music_c = quest::ChooseRandom(@random_music_c);
		my $random_music_d = quest::ChooseRandom(@random_music_d);
		my $random_music_e = quest::ChooseRandom(@random_music_e);
		my $random_music_f = quest::ChooseRandom(@random_music_f);
		my $random_music_g = quest::ChooseRandom(@random_music_g);
		my $random_music_h = quest::ChooseRandom(@random_music_h);
		my $random_music_i = quest::ChooseRandom(@random_music_i);
		my $random_music_j = quest::ChooseRandom(@random_music_j);
		my $random_music_k = quest::ChooseRandom(@random_music_k);
		my $random_music_l = quest::ChooseRandom(@random_music_l);
		my $random_music_m = quest::ChooseRandom(@random_music_m);
		my $random_music_n = quest::ChooseRandom(@random_music_n);
		my $random_music_o = quest::ChooseRandom(@random_music_o);
		my $random_music_p = quest::ChooseRandom(@random_music_p);
		my $random_music_q = quest::ChooseRandom(@random_music_q);
		my $random_music_r = quest::ChooseRandom(@random_music_r);
		my $random_music_s = quest::ChooseRandom(@random_music_s);
		my $random_music_t = quest::ChooseRandom(@random_music_t);
		my $random_music_u = quest::ChooseRandom(@random_music_u);
		my $random_music_v = quest::ChooseRandom(@random_music_v);
		my $random_music_w = quest::ChooseRandom(@random_music_w);
		my $random_music_x = quest::ChooseRandom(@random_music_x);
		my $random_music_y = quest::ChooseRandom(@random_music_y);
		my $random_music_z = quest::ChooseRandom(@random_music_z);
		my $random_music_a1 = quest::ChooseRandom(@random_music_a1);

		if($zoneid == 11)
			{
			system("$random_music_a");
			}
		elsif($zoneid == 117)
			{
			system("$random_music_b");
			}
		elsif($zoneid == 3)
			{
			system("$random_music_c");
			}
		elsif($zoneid == 16)
			{
			system("$random_music_d");
			}
		elsif($zoneid == 15)
			{
			system("$random_music_e");
			}
		elsif($zoneid == 14)
			{
			system("$random_music_f");
			}
		elsif($zoneid == 4)
			{
			system("$random_music_g");
			}
		elsif($zoneid == 181)
			{
			system("$random_music_h");
			}
		elsif($zoneid == 87)
			{
			system("$random_music_i");
			}
		elsif($zoneid == 93)
			{
			system("$random_music_j");
			}
		elsif($zoneid == 12)
			{
			system("$random_music_k");
			}
#		elsif($zoneid == 2)
#			{
#			system("$random_music_l");
#			}
#		elsif($zoneid == 1)
#			{
#			system("$random_music_m");
#			}
#		elsif($zoneid == 45)
#			{
#			system("$random_music_n");
#			}
#		elsif($zoneid == 347)
#			{
#			system("$random_music_o");
#			}
		elsif($zoneid == 50)
			{
			system("$random_music_p");
			}
#		elsif($zoneid == 17)
#			{
#			system("$random_music_q");
#			}
		elsif($zoneid == 79)
			{
			system("$random_music_r");
			}
#		elsif($zoneid == 183)
#			{
#			system("$random_music_s");
#			}
#		elsif($zoneid == 25)
#			{
#			system("$random_music_t");
#			}
#		elsif($zoneid == 263)
#			{
#			system("$random_music_u");
#			}
		elsif($zoneid == 13)
			{
			system("$random_music_v");
			}			
		elsif($zoneid == 92)
			{
			system("$random_music_w");
			}
		elsif($zoneid == 182)
			{
			system("$random_music_x");
			}
		elsif($zoneid == 54)
			{
			system("$random_music_y");
			}
		elsif($zoneid == 57)
			{
			system("$random_music_z");
			}
		elsif($zoneid == 100)
			{
			system("$random_music_a1");
			}
		}
	}


sub EVENT_TIMER 
	{
	if($timer eq "aggro")
		{
		my $guard_one = $entity_list->GetMobByNpcTypeID(999243);
	
		if ($guard_one) 
			{
			my $hate_guard_one = $guard_one->CastToNPC();
			$hate_guard_one->AddToHateList($client, 1);
			}
		quest::stoptimer("aggro");
		}
	elsif($timer eq "check")
		
{
		my $factioncheck = undef;
		if (defined($qglobals{kingdomfaction}))
			{	
			if ($qglobals{kingdomfaction} == 1) 
				{	
				$factioncheck = $client->GetCharacterFactionLevel(484);
					{
					if ($factioncheck >= 850 && $ulevel >= 60)
						{
						quest::setguild(1,1);
						if (!$client->FindBuff(5257)) #kingdom blessing V  

							{
							quest::selfcast(5257);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 50) 
						{
						quest::setguild(1,1);
						if (!$client->FindBuff(3467)) 
#kingdom blessing IV
							{
							quest::selfcast(3467);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 35) 
						{
						quest::setguild(1,1);
						if (!$client->FindBuff(1447)) 
#kingdom blessing III
							{
							quest::selfcast(1447);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 20) 
						{
						quest::setguild(1,1);
						if (!$client->FindBuff(3692)) 
#kingdom blessing II
							{
							quest::selfcast(3692);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 1) 
						{
						quest::setguild(1,1);
						if (!$client->FindBuff(312)) 
#kingdom blessing I
							{
							quest::selfcast(312);
							}
						}
					
					elsif ($client->FindBuff(5257) || $client->FindBuff(3467) || $client->FindBuff(1447) || $client->FindBuff(3692) || $client->FindBuff(312)) 
						{
						$client->BuffFadeBySpellID(5257);
						$client->BuffFadeBySpellID(3467);
						$client->BuffFadeBySpellID(1447);
						$client->BuffFadeBySpellID(3692);
						$client->BuffFadeBySpellID(312);
						quest::setguild(0,1);		
						}
					}
				}
			
			if ($qglobals{kingdomfaction} == 2) 
				{	
				$factioncheck = $client->GetCharacterFactionLevel(485);
					{
					if ($factioncheck >= 850 && $ulevel >= 60)
						{
						if (!$client->FindBuff(5257)) #kingdom blessing V  

							{
							quest::selfcast(5257);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 50) 
						{
						if (!$client->FindBuff(3467)) 
#kingdom blessing IV
							{
							quest::selfcast(3467);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 35) 
						{
						if (!$client->FindBuff(1447)) 
#kingdom blessing III
							{
							quest::selfcast(1447);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 20) 
						{
						if (!$client->FindBuff(3692)) 
#kingdom blessing II
							{
							quest::selfcast(3692);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 1) 
						{
						if (!$client->FindBuff(312)) 
#kingdom blessing I
							{
							quest::selfcast(312);
							}
						}
					
					elsif ($client->FindBuff(5257) || $client->FindBuff(3467) || $client->FindBuff(1447) || $client->FindBuff(3692) || $client->FindBuff(312)) 
						{
						$client->BuffFadeBySpellID(5257);
						$client->BuffFadeBySpellID(3467);
						$client->BuffFadeBySpellID(1447);
						$client->BuffFadeBySpellID(3692);
						$client->BuffFadeBySpellID(312);		
						}
					}
				}

			if ($qglobals{kingdomfaction} == 3) 
				{	
				$factioncheck = $client->GetCharacterFactionLevel(487);
					{
					if ($factioncheck >= 850 && $ulevel >= 60)
						{
						if (!$client->FindBuff(5257)) #kingdom blessing V  

							{
							quest::selfcast(5257);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 50) 
						{
						if (!$client->FindBuff(3467)) 
#kingdom blessing IV
							{
							quest::selfcast(3467);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 35) 
						{
						if (!$client->FindBuff(1447)) 
#kingdom blessing III
							{
							quest::selfcast(1447);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 20) 
						{
						if (!$client->FindBuff(3692)) 
#kingdom blessing II
							{
							quest::selfcast(3692);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 1) 
						{
						if (!$client->FindBuff(312)) 
#kingdom blessing I
							{
							quest::selfcast(312);
							}
						}
					
					elsif ($client->FindBuff(5257) || $client->FindBuff(3467) || $client->FindBuff(1447) || $client->FindBuff(3692) || $client->FindBuff(312)) 
						{
						$client->BuffFadeBySpellID(5257);
						$client->BuffFadeBySpellID(3467);
						$client->BuffFadeBySpellID(1447);
						$client->BuffFadeBySpellID(3692);
						$client->BuffFadeBySpellID(312);		
						}
					}
				}
		
			if ($qglobals{kingdomfaction} == 4) 
				{	
				$factioncheck = $client->GetCharacterFactionLevel(488);
					{
					if ($factioncheck >= 850 && $ulevel >= 60)
						{
						if (!$client->FindBuff(5257)) #kingdom blessing V  

							{
							quest::selfcast(5257);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 50) 
						{
						if (!$client->FindBuff(3467)) 
#kingdom blessing IV
							{
							quest::selfcast(3467);
							}
						}

					elsif ($factioncheck >= 850 && $ulevel >= 35) 
						{
						if (!$client->FindBuff(1447)) 
#kingdom blessing III
							{
							quest::selfcast(1447);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 20) 
						{
						if (!$client->FindBuff(3692)) 
#kingdom blessing II
							{
							quest::selfcast(3692);
							}
						}
					elsif ($factioncheck >= 850 && $ulevel >= 1) 
						{
						if (!$client->FindBuff(312)) 
#kingdom blessing I
							{
							quest::selfcast(312);
							}
						}
					
					elsif ($client->FindBuff(5257) || $client->FindBuff(3467) || $client->FindBuff(1447) || $client->FindBuff(3692) || $client->FindBuff(312)) 
						{
						$client->BuffFadeBySpellID(5257);
						$client->BuffFadeBySpellID(3467);
						$client->BuffFadeBySpellID(1447);
						$client->BuffFadeBySpellID(3692);
						$client->BuffFadeBySpellID(312);		
						}
					}
				}
			}
		}
	}
Reply With Quote