Thread: "Spell" Quest
View Single Post
  #3  
Old 10-26-2013, 01:45 AM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,072
Default

Quote:
Originally Posted by Fadedspirit View Post
First, why are you defining client in a client script?

$client-> literally works......


You're defining a NEW $client object with an uppercase C in Client, was this intentional? If so, why?
First - Because it is not a client script - it's a spell script. $caster_id is the exported object of this trigger EVENT:

Code:
                case EVENT_SPELL_EFFECT_CLIENT:
		case EVENT_SPELL_EFFECT_NPC:
		case EVENT_SPELL_EFFECT_BUFF_TIC_CLIENT:
                case EVENT_SPELL_EFFECT_BUFF_TIC_NPC:
		{
			ExportVar(packagename.c_str(), "caster_id", extradata);
			break;
		}
Second - GetTarget() is a valid mob method

Third - He made a syntax error

Code:
sub EVENT_SPELL_EFFECT_CLIENT {
	my $client = $entity_list->GetClientByID($caster_id);
	my $ClientTarget = $Client->GetTarget();
	if($ClientTarget->IsNPC()) {	 
		TESTLIFETAP();
	}
}
Should be:

Code:
sub EVENT_SPELL_EFFECT_CLIENT {
	my $Client = $entity_list->GetClientByID($caster_id);
	my $ClientTarget = $Client->GetTarget();
	if($ClientTarget->IsNPC()) {	 
		TESTLIFETAP();
	}
}
You're making your own client object - since client is not implied you have to fetch it through the data that is exported to the sub.

There is no need to respond in such a way - he legitimately asked for help.
Reply With Quote