CtrlIntention.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  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
  18. * several steps to be completed
  19. */
  20. public enum CtrlIntention
  21. {
  22. /** Do nothing, disconnect AI of NPC if no players around */
  23. AI_INTENTION_IDLE,
  24. /** Alerted state without goal : scan attackable targets, random walk, etc */
  25. AI_INTENTION_ACTIVE,
  26. /** Rest (sit until attacked) */
  27. AI_INTENTION_REST,
  28. /** Attack target (cast combat magic, go to target, combat), may be ignored,
  29. * if target is locked on another character or a peaceful zone and so on */
  30. AI_INTENTION_ATTACK,
  31. /** Cast a spell, depending on the spell - may start or stop attacking */
  32. AI_INTENTION_CAST,
  33. /** Just move to another location */
  34. AI_INTENTION_MOVE_TO,
  35. /** Like move, but check target's movement and follow it */
  36. AI_INTENTION_FOLLOW,
  37. /** PickUp and item, (got to item, pickup it, become idle */
  38. AI_INTENTION_PICK_UP,
  39. /** Move to target, then interact */
  40. AI_INTENTION_INTERACT;
  41. }