Crossfire JXClient, Trunk
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
com.realtime.crossfire.jxclient.queue.CommandQueue Class Reference
Collaboration diagram for com.realtime.crossfire.jxclient.queue.CommandQueue:
Collaboration graph

Public Member Functions

void addToRepeatCount (final int digit)
 
boolean checkFire ()
 
boolean checkRun ()
 
 CommandQueue (@NotNull final CrossfireServerConnection crossfireServerConnection, @NotNull final GuiStateManager guiStateManager, @NotNull final PendingDirections pendingDirections)
 
void sendMove (final int to, final int tag)
 
void sendNcom (final boolean mustSend, @NotNull final String command)
 
void sendNcom (final boolean mustSend, final int repeat, @NotNull final String command)
 
void sendRawString (@NotNull final String command)
 
boolean stopRunning ()
 

Private Member Functions

void clear ()
 
void comcReceived (final int packetNo, final int time)
 
int getRepeatCount ()
 
void mapScrollReceived (final int dx, final int dy)
 
void resetRepeatCount ()
 
void tickReceived (final int tickNo)
 

Private Attributes

final CrossfireServerConnection crossfireServerConnection
 
final GuiStateListener guiStateListener
 
boolean isRunning
 
final List< Integer > pendingCommands = new LinkedList<>()
 
final PendingDirections pendingDirections
 
int repeatCount
 

Static Private Attributes

static final int MAX_PENDING_COMMANDS = 10
 

Detailed Description

Maintains the pending (ncom) commands sent to the server.

Author
Andreas Kirschbaum

Definition at line 38 of file CommandQueue.java.

Constructor & Destructor Documentation

◆ CommandQueue()

com.realtime.crossfire.jxclient.queue.CommandQueue.CommandQueue ( @NotNull final CrossfireServerConnection  crossfireServerConnection,
@NotNull final GuiStateManager  guiStateManager,
@NotNull final PendingDirections  pendingDirections 
)

Member Function Documentation

◆ addToRepeatCount()

void com.realtime.crossfire.jxclient.queue.CommandQueue.addToRepeatCount ( final int  digit)

Adds a digit to the current repeat count.

Parameters
digitthe digit (0-9) to add

Definition at line 159 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.repeatCount.

Referenced by com.realtime.crossfire.jxclient.window.KeyHandler.handleKeyPress().

Here is the caller graph for this function:

◆ checkFire()

boolean com.realtime.crossfire.jxclient.queue.CommandQueue.checkFire ( )

Returns whether the character is firing.

Returns
whether the character is firing

Definition at line 294 of file CommandQueue.java.

Referenced by com.realtime.crossfire.jxclient.scripts.AbstractScriptProcess.cmdRequest().

Here is the caller graph for this function:

◆ checkRun()

boolean com.realtime.crossfire.jxclient.queue.CommandQueue.checkRun ( )

Returns whether the character is running.

Returns
whether the character is running

Definition at line 284 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.isRunning, and com.realtime.crossfire.jxclient.queue.CommandQueue.pendingCommands.

Referenced by com.realtime.crossfire.jxclient.scripts.AbstractScriptProcess.cmdRequest().

Here is the caller graph for this function:

◆ clear()

void com.realtime.crossfire.jxclient.queue.CommandQueue.clear ( )
private

◆ comcReceived()

void com.realtime.crossfire.jxclient.queue.CommandQueue.comcReceived ( final int  packetNo,
final int  time 
)
private

Called whenever a comc command was received.

Parameters
packetNothe packet number parameter
timethe time parameter

Definition at line 342 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.map.PendingDirections.comc(), com.realtime.crossfire.jxclient.queue.CommandQueue.pendingCommands, and com.realtime.crossfire.jxclient.queue.CommandQueue.pendingDirections.

Here is the call graph for this function:

◆ getRepeatCount()

int com.realtime.crossfire.jxclient.queue.CommandQueue.getRepeatCount ( )
private

Returns the current repeat count and reset it to zero.

Returns
the current repeat count

Definition at line 142 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.repeatCount, and com.realtime.crossfire.jxclient.queue.CommandQueue.resetRepeatCount().

Referenced by com.realtime.crossfire.jxclient.queue.CommandQueue.sendMove(), and com.realtime.crossfire.jxclient.queue.CommandQueue.sendNcom().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mapScrollReceived()

void com.realtime.crossfire.jxclient.queue.CommandQueue.mapScrollReceived ( final int  dx,
final int  dy 
)
private

Processes a received map scroll command.

Parameters
dxthe x scroll direction
dythe y scroll direction

Definition at line 313 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.map.PendingDirections.mapScroll(), and com.realtime.crossfire.jxclient.queue.CommandQueue.pendingDirections.

Here is the call graph for this function:

◆ resetRepeatCount()

void com.realtime.crossfire.jxclient.queue.CommandQueue.resetRepeatCount ( )
private

Resets the current repeat count to zero.

Definition at line 151 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.repeatCount.

Referenced by com.realtime.crossfire.jxclient.queue.CommandQueue.clear(), and com.realtime.crossfire.jxclient.queue.CommandQueue.getRepeatCount().

Here is the caller graph for this function:

◆ sendMove()

void com.realtime.crossfire.jxclient.queue.CommandQueue.sendMove ( final int  to,
final int  tag 
)

Sends a "move" command to the server. The repeat count value is the client's current repeat count.

Parameters
tothe destination location
tagthe item to move

Definition at line 304 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.crossfireServerConnection, com.realtime.crossfire.jxclient.queue.CommandQueue.getRepeatCount(), and com.realtime.crossfire.jxclient.server.crossfire.CrossfireServerConnection.sendMove().

Referenced by com.realtime.crossfire.jxclient.gui.item.GUIItemFloor.button3Clicked(), and com.realtime.crossfire.jxclient.gui.item.GUIItemInventory.button3Clicked().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendNcom() [1/2]

void com.realtime.crossfire.jxclient.queue.CommandQueue.sendNcom ( final boolean  mustSend,
@NotNull final String  command 
)

◆ sendNcom() [2/2]

void com.realtime.crossfire.jxclient.queue.CommandQueue.sendNcom ( final boolean  mustSend,
final int  repeat,
@NotNull final String  command 
)

◆ sendRawString()

void com.realtime.crossfire.jxclient.queue.CommandQueue.sendRawString ( @NotNull final String  command)

Sends a raw command to the server.

Parameters
commandthe command to send
See also
#sendNcom(boolean, String)

Definition at line 258 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.crossfireServerConnection, com.realtime.crossfire.jxclient.queue.CommandQueue.pendingCommands, and com.realtime.crossfire.jxclient.server.crossfire.CrossfireServerConnection.sendRawString().

Referenced by com.realtime.crossfire.jxclient.scripts.AbstractScriptProcess.cmdIssue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stopRunning()

boolean com.realtime.crossfire.jxclient.queue.CommandQueue.stopRunning ( )

Tells the server to stop running. If the character is not running, does nothing.

Returns
whether running was active

Definition at line 269 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.isRunning, com.realtime.crossfire.jxclient.queue.CommandQueue.pendingCommands, and com.realtime.crossfire.jxclient.queue.CommandQueue.sendNcom().

Referenced by com.realtime.crossfire.jxclient.window.KeyHandler.updateModifiers().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ tickReceived()

void com.realtime.crossfire.jxclient.queue.CommandQueue.tickReceived ( final int  tickNo)
private

Called whenever a tick command was received.

Parameters
tickNothe tick number parameter

Definition at line 362 of file CommandQueue.java.

References com.realtime.crossfire.jxclient.queue.CommandQueue.pendingDirections, and com.realtime.crossfire.jxclient.map.PendingDirections.tick().

Here is the call graph for this function:

Member Data Documentation

◆ crossfireServerConnection

final CrossfireServerConnection com.realtime.crossfire.jxclient.queue.CommandQueue.crossfireServerConnection
private

◆ guiStateListener

final GuiStateListener com.realtime.crossfire.jxclient.queue.CommandQueue.guiStateListener
private

The GuiStateListener for detecting established or dropped connections.

Definition at line 83 of file CommandQueue.java.

Referenced by com.realtime.crossfire.jxclient.queue.CommandQueue.CommandQueue().

◆ isRunning

boolean com.realtime.crossfire.jxclient.queue.CommandQueue.isRunning
private

◆ MAX_PENDING_COMMANDS

final int com.realtime.crossfire.jxclient.queue.CommandQueue.MAX_PENDING_COMMANDS = 10
staticprivate

Maximum number of pending commands sent to the server. Excess commands will be dropped.

Definition at line 44 of file CommandQueue.java.

Referenced by com.realtime.crossfire.jxclient.queue.CommandQueue.sendNcom().

◆ pendingCommands

final List<Integer> com.realtime.crossfire.jxclient.queue.CommandQueue.pendingCommands = new LinkedList<>()
private

◆ pendingDirections

final PendingDirections com.realtime.crossfire.jxclient.queue.CommandQueue.pendingDirections
private

◆ repeatCount

int com.realtime.crossfire.jxclient.queue.CommandQueue.repeatCount
private

The documentation for this class was generated from the following file: