Jump to content

Question

Posted (edited)

Hello recently i played star wars old republic and i got inspired an idea of the pet / summon

that it auto-attack the target that you attack.

 

Tried to do a code in L2Character (btw use F & High5)

like

final L2Summon pet = this.getPet();

 

doAttack(L2Character target)

{

 

if (!(pet == null))

{

  pet.getAi().getIntention(CTRL.INTENTION.DOAttack. target)

}

 

 

something like this but it give error 

any way on how to control attack of our summon / pet to attack the enemy even if is L2MonsterInstance or L2PcInstance object?

Thanks a lot

 

 

Ps. i'm not starter in java so speak freely, any answer i would appreciate it i just stuck.

 

2h8dedl.png

Edited by AccessDenied

Recommended Posts

  • 0
Posted

 

I'm taking your sister, period.

    @Override
    public void doAttack(L2Character target)
    {
        final L2Summon pet = getPet();
        
        if (pet != null)
            pet.getAI().setIntention(CtrlIntention.ATTACK, target);
        
        super.doAttack(target);
        clearRecentFakeDeath();
    }

Yeap this is what i wrote in the first place and it give error 

 

java.lang.NullPointerException
        at com.l2jserver.gameserver.model.actor.L2Character.doAttack(L2Character
.java:738)
        at com.l2jserver.gameserver.model.actor.L2Character$AIAccessor.doAttack(
L2Character.java:3747)
        at com.l2jserver.gameserver.ai.L2SummonAI.thinkAttack(L2SummonAI.java:93
)
        at com.l2jserver.gameserver.ai.L2SummonAI.onEvtThink(L2SummonAI.java:144
)
        at com.l2jserver.gameserver.ai.L2CharacterAI.onEvtArrived(L2CharacterAI.
java:706)
        at com.l2jserver.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:45
9)
        at com.l2jserver.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:34
6)
        at com.l2jserver.gameserver.GameTimeController$MovingObjectArrived.run(G
ameTimeController.java:209)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
  • 0
Posted

hasAi() check too, even if there is no reason you don't have AI anymore. And as I said, you miss all checks so don't expect it works fine for particular cases.

I know i miss many checks but i just want to test first.. i really dont get why this error 

 

java.lang.NullPointerException
        at com.l2jserver.gameserver.model.actor.L2Character.doAttack(L2Character
.java:738)
        at com.l2jserver.gameserver.model.actor.L2Character$AIAccessor.doAttack(
L2Character.java:3747)
        at com.l2jserver.gameserver.ai.L2SummonAI.thinkAttack(L2SummonAI.java:93
)
        at com.l2jserver.gameserver.ai.L2SummonAI.onEvtThink(L2SummonAI.java:144
)
        at com.l2jserver.gameserver.ai.L2CharacterAI.onEvtArrived(L2CharacterAI.
java:706)
        at com.l2jserver.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:45
9)
        at com.l2jserver.gameserver.ai.AbstractAI.notifyEvent(AbstractAI.java:34
6)
        at com.l2jserver.gameserver.GameTimeController$MovingObjectArrived.run(G
ameTimeController.java:209)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
  • 0
Posted (edited)

What pet are you testing? With strider its working fine. Also, which is your 738 line?

Edited by SweeTs
  • 0
Posted

What pet are you testing? With strider its working fine. Also, which is your 738 line?

Im testing with wolf (the little one)

Wolf collar 

also my 738 line in L2Character is

if (EventEngine.areTogether(getObjectId(), getTarget().getObjectId()))
sendPacket(ActionFailed.STATIC_PACKET);
 
which is a check for an event engine but i dont get why since event engine is off or they dont participate..
  • 0
Posted (edited)

This line creates the NPE, so it's not from this pet addon :D Also, for me, on aCis Int, it's working fine, with any pet.

Edited by SweeTs
  • 0
Posted

This line creates the NPE, so it's not from this pet addon :D Also, for me, on aCis Int, it's working fine, with any pet.

Ok ill make it comment and try now sec

  • 0
Posted

:OOOOOO it worked <3 SweetS you earned my sister... 

i love youuuuu <3 

idk why it created problem :/ this boolean check also if the engine is running .. but since it works thanks

Also thanks to Tryskel.

Guest
This topic is now closed to further replies.


×
×
  • Create New...