CtrlIntention.java 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. * This program is free software: you can redistribute it and/or modify it under
  3. * the terms of the GNU General Public License as published by the Free Software
  4. * Foundation, either version 3 of the License, or (at your option) any later
  5. * version.
  6. *
  7. * This program is distributed in the hope that it will be useful, but WITHOUT
  8. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  9. * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
  10. * details.
  11. *
  12. * You should have received a copy of the GNU General Public License along with
  13. * this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. package com.l2jserver.gameserver.ai;
  16. /**
  17. * Enumeration of generic intentions of an NPC/PC, an intention may require several steps to be completed.
  18. */
  19. public enum CtrlIntention
  20. {
  21. /** Do nothing, disconnect AI of NPC if no players around */
  22. AI_INTENTION_IDLE,
  23. /** Alerted state without goal : scan attackable targets, random walk, etc */
  24. AI_INTENTION_ACTIVE,
  25. /** Rest (sit until attacked) */
  26. AI_INTENTION_REST,
  27. /** Attack target (cast combat magic, go to target, combat), may be ignored, if target is locked on another character or a peaceful zone and so on. */
  28. AI_INTENTION_ATTACK,
  29. /** Cast a spell, depending on the spell - may start or stop attacking */
  30. AI_INTENTION_CAST,
  31. /** Just move to another location */
  32. AI_INTENTION_MOVE_TO,
  33. /** Like move, but check target's movement and follow it */
  34. AI_INTENTION_FOLLOW,
  35. /** PickUp and item, (got to item, pickup it, become idle */
  36. AI_INTENTION_PICK_UP,
  37. /** Move to target, then interact */
  38. AI_INTENTION_INTERACT;
  39. }