@Override protected void clientNotifyDead() { _clientMovingToPawnOffset = 0; _clientMoving = false; super.clientNotifyDead(); }
/** * Launch actions corresponding to the Event ReadyToAct.<br> * <B><U> Actions</U> :</B> * * <ul> * <li>Launch actions corresponding to the Event Think * </ul> */ @Override protected void onEvtReadyToAct() { // Launch actions corresponding to the Event Think if (_nextIntention != null) { setIntention(_nextIntention._crtlIntention, _nextIntention._arg0, _nextIntention._arg1); _nextIntention = null; } super.onEvtReadyToAct(); }
/** * Saves the current Intention for this L2PlayerAI if necessary and calls changeIntention in * AbstractAI. * * @param intention The new Intention to set to the AI * @param arg0 The first parameter of the Intention * @param arg1 The second parameter of the Intention */ @Override protected synchronized void changeIntention(CtrlIntention intention, Object arg0, Object arg1) { // Forget next if it's not cast or it's cast and skill is toggle. if ((intention != AI_INTENTION_CAST) || ((arg0 != null) && !((Skill) arg0).isToggle())) { _nextIntention = null; super.changeIntention(intention, arg0, arg1); return; } // do nothing if next intention is same as current one. if ((intention == _intention) && (arg0 == _intentionArg0) && (arg1 == _intentionArg1)) { super.changeIntention(intention, arg0, arg1); return; } // save current intention so it can be used after cast saveNextIntention(_intention, _intentionArg0, _intentionArg1); super.changeIntention(intention, arg0, arg1); }
/** * Launch actions corresponding to the Event Cancel.<br> * <B><U> Actions</U> :</B> * * <ul> * <li>Stop an AI Follow Task * <li>Launch actions corresponding to the Event Think * </ul> */ @Override protected void onEvtCancel() { _nextIntention = null; super.onEvtCancel(); }