Go Back   EQEmulator Home > EQEmulator Forums > Quests > Quests::Q&A

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

Reply
 
Thread Tools Display Modes
  #1  
Old 01-13-2015, 01:13 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

You can probably just set an entity variable on the client that attacks the boss. Then, have the minions iterate through the client list to find the one that attached the boss and get their name. You would want to get their entity ID and verify they are still in zone by getting them before trying to make an NPC attack them or whatever. Otherwise, if the client that attached the boss is dead already, it might crash your zone depending on what you try to do to them.

Set the entity variable "SetEntityVariable()" on the $client from EVENT_COMBAT if $combat_state == 1.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote
  #2  
Old 01-13-2015, 02:11 PM
Bohbo
Hill Giant
 
Join Date: Dec 2012
Posts: 116
Default

Quote:
Originally Posted by trevius View Post
You can probably just set an entity variable on the client that attacks the boss. Then, have the minions iterate through the client list to find the one that attached the boss and get their name. You would want to get their entity ID and verify they are still in zone by getting them before trying to make an NPC attack them or whatever. Otherwise, if the client that attached the boss is dead already, it might crash your zone depending on what you try to do to them.

Set the entity variable "SetEntityVariable()" on the $client from EVENT_COMBAT if $combat_state == 1.
Not 100% sure i am on the right track here.

I made boss part look like this.

Code:
if ($combat_state == 1){
	$mob->SetEntityVariable($client,$attacker);
	}

and the minion part look like this in the signal event:

EDIT::: I think the problem is here not searching entity list, trying to figure that out.
Code:
quest::emote($attacker);
quest::attack($attacker);
quest::attacknpc($attacker);
Neither the emote or the regular atack() work but the attacknpc at least returns an entity of 0, so either its not working because of npcsttack or because its not storing the entity?

Sorry I am such a newb at this, really trying to learn.

EDIT: I tried a few variations below cant seem to get this...
Code:
$mob->SetEntityVariable($client,$threat);
	$threat = $entity_list->GetClientByName();
	$threat = $entity_list->GetClientByName($name);

with boss i was doing this to try and pull the name variable
$attacker = GetEntityVariable($threat);
Reply With Quote
  #3  
Old 01-13-2015, 04:54 PM
Bohbo
Hill Giant
 
Join Date: Dec 2012
Posts: 116
Default

Maybe if I understood why this doesn't work I could get a better handle on it.

Code:
	sub EVENT_COMBAT{
		my @threats = $entity_list->GetClientByName();
	
		foreach $threat (@threats){
			quest::emote("Die $threat");
			}
	}
I woould expect that to return the name of the client or clients of anyone on agrolist/incombat or at the VERY least the person who started combat.
EDIT:: It was implied but it doesn't return anything.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 12:23 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3