Skip to main content

GameClient

Struct GameClient 

Source
pub struct GameClient<S: PlayConnection> {
    pub state: GameState,
    /* private fields */
}

Fields§

§state: GameState

Implementations§

Source§

impl<S: PlayConnection> GameClient<S>

Source

pub fn new(session: S) -> Self

Source

pub fn entity_id(&self) -> EntityId

Source

pub async fn wait_until_ready(&mut self) -> Result<()>

Source

pub fn drain_events(&mut self)

Drain all pending server events (non-blocking).

Source

pub async fn next_event(&mut self) -> Option<SessionEvent>

Wait for the next server event.

Source

pub async fn handle_event(&mut self, event: SessionEvent) -> Result<()>

Source

pub fn is_connected(&self) -> bool

Source

pub fn close_overlays(&mut self)

Source

pub fn back_on_esc(&mut self) -> bool

Esc / back — pop one UI layer instead of closing every overlay at once.

Source

pub fn toggle_stats(&mut self)

Source

pub fn open_inventory_menu(&mut self)

Source

pub fn close_inventory_menu(&mut self)

Source

pub fn open_rename_prompt(&mut self) -> Result<()>

Source

pub fn cancel_rename_prompt(&mut self)

Source

pub async fn confirm_rename_prompt(&mut self) -> Result<()>

Source

pub fn toggle_inventory_menu(&mut self)

Source

pub fn inventory_menu_move(&mut self, delta: i32)

↑/↓ in the inventory browser, or within the “move to…” picker when open.

Source

pub async fn activate_inventory_selection(&mut self) -> Result<()>

Enter: unequip a worn bag, equip a weapon, wear/place a loose bag or chest, drink/eat a loose consumable — or fall back to the “move to…” destination picker for anything else (including items already inside a worn bag or a nearby chest).

Source

pub fn open_move_picker(&mut self) -> Result<()>

m: always open the “move to…” picker for the selected item, even for weapons/wearables that Enter would otherwise equip/wear directly.

Source

pub fn close_move_picker(&mut self)

Source

pub fn move_picker_adjust_quantity(&mut self, delta: i32)

Source

pub fn move_picker_set_quantity_max(&mut self)

Source

pub fn destroy_picker_adjust_quantity(&mut self, delta: i32)

Source

pub fn destroy_picker_set_quantity_max(&mut self)

Source

pub async fn drop_selected(&mut self) -> Result<()>

d: drop the selected item on the ground immediately (no picker).

Source

pub async fn drop_item( &mut self, item_instance_id: Uuid, from: InventoryLocation, ) -> Result<()>

Source

pub fn open_destroy_picker(&mut self) -> Result<()>

x: open permanent-delete picker for the selected item (quantity + confirm).

Source

pub fn close_destroy_picker(&mut self)

Source

pub fn cancel_destroy_confirm(&mut self)

Source

pub fn request_destroy_confirm(&mut self) -> Result<()>

Source

pub async fn confirm_destroy_item(&mut self) -> Result<()>

Source

pub async fn destroy_item( &mut self, item_instance_id: Uuid, from: InventoryLocation, quantity: Option<u32>, ) -> Result<()>

Source

pub async fn toggle_chest_lock_for_selection(&mut self) -> Result<()>

l: lock/unlock a placed chest — selected chest in inventory UI, else nearest.

Source

pub async fn toggle_placed_chest_lock( &mut self, container_id: &str, ) -> Result<()>

Source

pub async fn toggle_nearby_chest_lock(&mut self) -> Result<()>

l outside inventory: lock/unlock the nearest placed chest (within CONTAINER_RANGE_M).

Source

pub async fn unequip_mainhand(&mut self) -> Result<()>

Source

pub async fn unequip_all_worn(&mut self) -> Result<()>

Source

pub async fn pickup_nearest_container(&mut self) -> Result<()>

Source

pub async fn equip_worn( &mut self, slot: BodySlot, instance_id: Option<Uuid>, ) -> Result<()>

Source

pub async fn place_container(&mut self, item_instance_id: Uuid) -> Result<()>

Source

pub async fn pickup_container(&mut self, container_id: String) -> Result<()>

Source

pub async fn move_item( &mut self, item_instance_id: Uuid, from: InventoryLocation, to: InventoryLocation, to_parent_instance_id: Option<Uuid>, quantity: Option<u32>, ) -> Result<()>

Source

pub async fn set_container_locked( &mut self, location: InventoryLocation, locked: bool, ) -> Result<()>

Source

pub async fn use_item(&mut self, template_id: &str) -> Result<()>

Source

pub fn open_craft_menu(&mut self)

Source

pub fn close_craft_menu(&mut self)

Source

pub fn close_shop_menu(&mut self)

Source

pub fn shop_tab_toggle(&mut self)

Source

pub fn shop_menu_move(&mut self, delta: i32)

Source

pub fn shop_quantity_adjust(&mut self, delta: i32)

Source

pub fn shop_quantity_set_max(&mut self)

Source

pub async fn shop_confirm(&mut self) -> Result<()>

Source

pub fn craft_menu_move(&mut self, delta: i32)

Source

pub fn craft_batch_adjust_quantity(&mut self, delta: i32)

Source

pub fn craft_batch_set_max(&mut self)

Source

pub async fn craft_menu_selection(&mut self) -> Result<()>

Source

pub async fn move_by( &mut self, forward: f32, strafe: f32, vertical: f32, sprint: bool, ) -> Result<()>

Source

pub async fn harvest_nearest(&mut self) -> Result<()>

Source

pub async fn craft_next_available(&mut self) -> Result<()>

Source

pub async fn craft( &mut self, blueprint_id: &str, count: Option<u32>, ) -> Result<()>

Source

pub async fn interact_nearest(&mut self) -> Result<()>

Source

pub async fn test_damage(&mut self, amount: f32) -> Result<()>

Source

pub async fn cycle_combat_target(&mut self, reverse: bool) -> Result<()>

Source

pub async fn cycle_combat_target_slot( &mut self, slot_index: u8, reverse: bool, ) -> Result<()>

Source

pub async fn set_combat_target_slot( &mut self, slot_index: u8, target_id: EntityId, label: &str, ) -> Result<()>

Source

pub async fn set_combat_target( &mut self, target_id: EntityId, label: &str, ) -> Result<()>

Source

pub async fn clear_combat_target_slot(&mut self, slot_index: u8) -> Result<()>

Source

pub async fn clear_combat_target(&mut self) -> Result<()>

Source

pub async fn advance_rotation(&mut self, slot_index: u8) -> Result<()>

Source

pub async fn assign_slot_preset( &mut self, slot_index: u8, preset_id: &str, ) -> Result<()>

Source

pub async fn cast_ability( &mut self, ability_id: &str, target_id: Option<EntityId>, ) -> Result<()>

Source

pub async fn upsert_rotation_preset( &mut self, preset: RotationPreset, ) -> Result<()>

Source

pub async fn delete_rotation_preset(&mut self, preset_id: &str) -> Result<()>

Source

pub async fn toggle_auto_attack_slot(&mut self, slot_index: u8) -> Result<()>

Source

pub async fn pickup_nearest(&mut self) -> Result<()>

Source

pub async fn toggle_auto_attack(&mut self) -> Result<()>

Source

pub async fn dodge(&mut self) -> Result<()>

Source

pub async fn lunge(&mut self) -> Result<()>

Source

pub fn last_move_axes(&self) -> (f32, f32)

Remembered WASD axes for lunge when not currently moving.

Source

pub async fn set_block(&mut self, enabled: bool) -> Result<()>

Source

pub async fn equip_mainhand( &mut self, template_id: Option<String>, ) -> Result<()>

Source

pub async fn say(&mut self, channel: ChatChannel, text: &str) -> Result<()>

Source

pub async fn stop(&mut self) -> Result<()>

Source

pub fn disconnect(&self)

Auto Trait Implementations§

§

impl<S> Freeze for GameClient<S>
where S: Freeze,

§

impl<S> RefUnwindSafe for GameClient<S>
where S: RefUnwindSafe,

§

impl<S> Send for GameClient<S>

§

impl<S> Sync for GameClient<S>
where S: Sync,

§

impl<S> Unpin for GameClient<S>
where S: Unpin,

§

impl<S> UnsafeUnpin for GameClient<S>
where S: UnsafeUnpin,

§

impl<S> UnwindSafe for GameClient<S>
where S: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more