public final class Actions
extends Object
When using these actions you should first make sure the action can actually be performed in the current context before returning it in an ActionHandler. A bot can get stuck easily for example by attempting to wield something repeatedly when it has no hands since trying it takes no game turns.
Many actions have a "smarter" variant in ActionsComplex that also checks preconditions.
ActionsComplex
Modifier and Type | Method and Description |
---|---|
static IAction |
Apply(Character slot)
Apply item at given inventory slot.
|
static IAction |
ApplyAt(Character slot,
Direction dir)
Apply the item in the given direction (if prompted).
|
static IAction |
Ascend()
Go up the stairs or climb a ladder.
|
static IAction |
Attack(Direction dir)
Force attack in the given direction (NetHack 'F' command).
|
static IAction |
Chat(Direction dir)
Chat with monster at direction dir.
|
static IAction |
Close(Direction dir)
Close a door
|
static IAction |
Contribute(Direction dir,
Long amount)
Offer a donation to a priest at dir.
|
static IAction |
Descend()
Go down the stairs or a ladder.
|
static IAction |
Dip(Character itemSlot,
Character potionSlot)
Dip item at itemSlot into potion at potionSlot (or a fountain if it is '.')
|
static IAction |
Drop(Character slot)
Drop one of item at slot.
|
static IAction |
Drop(Character slot,
Long num)
Drop a specific amount of item at slot.
|
static IAction |
Eat(Character slot)
Eat item at slot.
|
static IAction |
Eat(String label)
Eat item from the ground by label.
|
static IAction |
EngraveAppending(Character slot,
String engraving)
Engrave action overwriting the current engraving (if prompted).
|
static IAction |
EngraveOverwriting(Character slot,
String engraving)
Engrave action appending to the current engraving (if prompted).
|
static IAction |
Enhance()
Enhance specific skills.
|
static IAction |
ForceLock()
Use current weapon to force a lock on a container.
|
static IAction |
Kick(Direction dir)
Kick in the given direction.
|
static IAction |
Move(Direction dir)
Move or attack in the given direction.
|
static IAction |
Offer(Character slot)
Offer item at slot as sacrifice.
|
static IAction |
Offer(String label)
Offer item from the ground by label.
|
static IAction |
Open(Direction dir)
Open a door
|
static IAction |
PickUp(List<String> labels)
Pick up all items in the list by label.
|
static IAction |
PickUp(String label)
Pick up all of item by label.
|
static IAction |
Pray()
#pray action.
|
static IAction |
PutIn(Character bagSlot,
Character itemSlot)
Put all of item at itemSlot into the container at bagSlot.
|
static IAction |
PutIn(Character bagSlot,
Character itemSlot,
Long amount)
Put amount of item at itemSlot into the container at bagSlot.
|
static IAction |
PutOn(Character slot)
Put on item at slot (for jewelry).
|
static IAction |
Quaff(Character slot)
Drink a potion at slot.
|
static IAction |
Read(Character slot)
Read scrolls or spellbooks.
|
static IAction |
Remove(Character slot)
Remove item at slot (for jewelry).
|
static IAction |
Rub(Character slot)
Rub a lamp at slot.
|
static IAction |
Search()
Search the around the current tile once.
|
static IAction |
Search(Long num)
Shorthand for searching multiple times
|
static IAction |
Sit()
Sit down (only useful on thrones).
|
static IAction |
TakeOff(Character slot)
Take off item at slot (for armor).
|
static IAction |
TakeOut(Character bagSlot,
String itemLabel)
Take out all of item with label itemLabel from container at bagSlot.
|
static IAction |
TakeOut(Character bagSlot,
String itemLabel,
Long amount)
Take out amount of item with label itemLabel from container at bagSlot.
|
static IAction |
Throw(Character slot,
Direction dir)
Throw item at slot in direction dir.
|
static IAction |
Unlock(Character slot,
Direction dir)
Use key, lockpick or credit card at slot to unlock a door.
|
static IAction |
Wait()
Do nothing in the next turn.
|
static IAction |
Wear(Character slot)
Wear item at slot (for armor).
|
static IAction |
Wield(Character slot)
Wield item at slot as a weapon.
|
static IAction |
Wipe()
Wipe own face.
|
static IAction |
ZapWand(Character slot)
Zap a known non-directional wand.
|
static IAction |
ZapWandAt(Character slot,
Direction dir)
Zap a wand in the given direction (if prompted for a direction).
|
public static IAction Attack(Direction dir)
IPlayer.isOvertaxed()
public static IAction Move(Direction dir)
IPlayer.isOverloaded()
public static IAction Search()
Search(Long)
public static IAction Search(Long num)
public static IAction Wait()
public static IAction Ascend()
IPlayer.isStressed()
,
ITile.feature()
public static IAction Descend()
ITile.feature()
,
ActionsComplex.descend(IGame)
public static IAction Kick(Direction dir)
public static IAction Pray()
IGame.canPray()
,
ActionsComplex.pray(IGame)
public static IAction EngraveOverwriting(Character slot, String engraving)
slot
- Inventory slot to engrave with. Use '-' to engrave with fingers.engraving
- String to engraveIGame.canEngrave()
,
ITile.isEngravable()
public static IAction EngraveAppending(Character slot, String engraving)
slot
- Inventory slot to engrave with. Use '-' to engrave with fingers.engraving
- String to engraveIGame.canEngrave()
,
ITile.isEngravable()
public static IAction Apply(Character slot)
public static IAction TakeOut(Character bagSlot, String itemLabel)
bagSlot
- can be '.' for looting containers on the ground.ActionsComplex.unbag(IGame, java.util.Map.Entry)
public static IAction TakeOut(Character bagSlot, String itemLabel, Long amount)
bagSlot
- can be '.' for looting containers on the ground.ActionsComplex.unbag(IGame, java.util.Map.Entry)
public static IAction PutIn(Character bagSlot, Character itemSlot, Long amount)
public static IAction PutIn(Character bagSlot, Character itemSlot)
public static IAction ApplyAt(Character slot, Direction dir)
public static IAction ForceLock()
public static IAction Unlock(Character slot, Direction dir)
public static IAction Wield(Character slot)
public static IAction Wear(Character slot)
public static IAction PutOn(Character slot)
public static IAction TakeOff(Character slot)
public static IAction Remove(Character slot)
public static IAction Drop(Character slot)
public static IAction Drop(Character slot, Long num)
IItem.quantity()
public static IAction PickUp(List<String> labels)
IItem.label()
public static IAction PickUp(String label)
IItem.label()
public static IAction Enhance()
public static IAction Read(Character slot)
public static IAction Sit()
ITile.feature()
public static IAction Eat(Character slot)
public static IAction Eat(String label)
public static IAction Quaff(Character slot)
public static IAction Offer(Character slot)
ITile.feature()
public static IAction Offer(String label)
ITile.feature()
public static IAction Dip(Character itemSlot, Character potionSlot)
public static IAction Throw(Character slot, Direction dir)
public static IAction Wipe()
public static IAction ZapWand(Character slot)
ZapWandAt(Character, Direction)
public static IAction ZapWandAt(Character slot, Direction dir)
public static IAction Rub(Character slot)
public static IAction Chat(Direction dir)
Contribute(Direction, Long)