Struct screeps::objects::StructureController
source · #[repr(transparent)]pub struct StructureController { /* private fields */ }
Expand description
An object representing a StructureController
.
Implementations§
source§impl StructureController
impl StructureController
sourcepub fn is_power_enabled(&self) -> bool
pub fn is_power_enabled(&self) -> bool
Whether power is enabled in the room, allowing power creeps to use powers.
source§impl StructureController
impl StructureController
source§impl StructureController
impl StructureController
source§impl StructureController
impl StructureController
sourcepub fn progress_total(&self) -> u32
pub fn progress_total(&self) -> u32
The total StructureController::progress
needed to upgrade the
controller to the next level.
source§impl StructureController
impl StructureController
sourcepub fn reservation(&self) -> Option<Reservation>
pub fn reservation(&self) -> Option<Reservation>
Information about the reservation of this controller, if it is currently reserved.
source§impl StructureController
impl StructureController
source§impl StructureController
impl StructureController
sourcepub fn safe_mode_available(&self) -> u32
pub fn safe_mode_available(&self) -> u32
The number of of available safe mode activations, which can be increased
by using Creep::generate_safe_mode
source§impl StructureController
impl StructureController
sourcepub fn safe_mode_cooldown(&self) -> Option<u32>
pub fn safe_mode_cooldown(&self) -> Option<u32>
The cooldown remaining until safe mode can be activated again.
source§impl StructureController
impl StructureController
sourcepub fn sign(&self) -> Option<Sign>
pub fn sign(&self) -> Option<Sign>
Information about the sign on this controller, if it has been signed by
Creep::sign_controller
.
source§impl StructureController
impl StructureController
sourcepub fn ticks_to_downgrade(&self) -> u32
pub fn ticks_to_downgrade(&self) -> u32
The number of ticks until the level of the controller will be
decremented due to a lack of [Creep::upgrade_controller
] activity.
source§impl StructureController
impl StructureController
sourcepub fn upgrade_blocked(&self) -> u32
pub fn upgrade_blocked(&self) -> u32
The number of ticks until the controller can be upgraded, or have safe
mode activated, due to Creep::attack_controller
.
source§impl StructureController
impl StructureController
sourcepub fn activate_safe_mode(&self) -> ReturnCode
pub fn activate_safe_mode(&self) -> ReturnCode
Activate safe mode for the room, preventing hostile creep actions in the room for 20,000 ticks
source§impl StructureController
impl StructureController
sourcepub fn unclaim(&self) -> ReturnCode
pub fn unclaim(&self) -> ReturnCode
Relinquish ownership of the controller and its room.
Methods from Deref<Target = RoomObject>§
sourcepub fn pos(&self) -> RoomPosition
pub fn pos(&self) -> RoomPosition
Position of the object.
Methods from Deref<Target = JsValue>§
pub const NULL: JsValue = JsValue{ idx: JSIDX_NULL, _marker: marker::PhantomData,}
pub const UNDEFINED: JsValue = JsValue{ idx: JSIDX_UNDEFINED, _marker: marker::PhantomData,}
pub const TRUE: JsValue = JsValue{ idx: JSIDX_TRUE, _marker: marker::PhantomData,}
pub const FALSE: JsValue = JsValue{ idx: JSIDX_FALSE, _marker: marker::PhantomData,}
sourcepub fn as_f64(&self) -> Option<f64>
pub fn as_f64(&self) -> Option<f64>
Returns the f64
value of this JS value if it’s an instance of a
number.
If this JS value is not an instance of a number then this returns
None
.
sourcepub fn as_string(&self) -> Option<String>
Available on crate feature std
only.
pub fn as_string(&self) -> Option<String>
std
only.If this JS value is a string value, this function copies the JS string
value into wasm linear memory, encoded as UTF-8, and returns it as a
Rust String
.
To avoid the copying and re-encoding, consider the
JsString::try_from()
function from js-sys
instead.
If this JS value is not an instance of a string or if it’s not valid
utf-8 then this returns None
.
UTF-16 vs UTF-8
JavaScript strings in general are encoded as UTF-16, but Rust strings
are encoded as UTF-8. This can cause the Rust string to look a bit
different than the JS string sometimes. For more details see the
documentation about the str
type which contains a few
caveats about the encodings.
sourcepub fn as_bool(&self) -> Option<bool>
pub fn as_bool(&self) -> Option<bool>
Returns the bool
value of this JS value if it’s an instance of a
boolean.
If this JS value is not an instance of a boolean then this returns
None
.
sourcepub fn is_undefined(&self) -> bool
pub fn is_undefined(&self) -> bool
Tests whether this JS value is undefined
sourcepub fn is_function(&self) -> bool
pub fn is_function(&self) -> bool
Tests whether the type of this JS value is function
.
sourcepub fn js_in(&self, obj: &JsValue) -> bool
pub fn js_in(&self, obj: &JsValue) -> bool
Applies the binary in
JS operator on the two JsValue
s.
sourcepub fn loose_eq(&self, other: &JsValue) -> bool
pub fn loose_eq(&self, other: &JsValue) -> bool
Compare two JsValue
s for equality, using the ==
operator in JS.
sourcepub fn unsigned_shr(&self, rhs: &JsValue) -> u32
pub fn unsigned_shr(&self, rhs: &JsValue) -> u32
Applies the binary >>>
JS operator on the two JsValue
s.
sourcepub fn checked_div(&self, rhs: &JsValue) -> JsValue
pub fn checked_div(&self, rhs: &JsValue) -> JsValue
Applies the binary /
JS operator on two JsValue
s, catching and returning any RangeError
thrown.
sourcepub fn pow(&self, rhs: &JsValue) -> JsValue
pub fn pow(&self, rhs: &JsValue) -> JsValue
Applies the binary **
JS operator on the two JsValue
s.
sourcepub fn lt(&self, other: &JsValue) -> bool
pub fn lt(&self, other: &JsValue) -> bool
Applies the binary <
JS operator on the two JsValue
s.
sourcepub fn le(&self, other: &JsValue) -> bool
pub fn le(&self, other: &JsValue) -> bool
Applies the binary <=
JS operator on the two JsValue
s.
sourcepub fn ge(&self, other: &JsValue) -> bool
pub fn ge(&self, other: &JsValue) -> bool
Applies the binary >=
JS operator on the two JsValue
s.
sourcepub fn gt(&self, other: &JsValue) -> bool
pub fn gt(&self, other: &JsValue) -> bool
Applies the binary >
JS operator on the two JsValue
s.
sourcepub fn unchecked_into_f64(&self) -> f64
pub fn unchecked_into_f64(&self) -> f64
Applies the unary +
JS operator on a JsValue
. Can throw.
Trait Implementations§
source§impl AsRef<JsValue> for StructureController
impl AsRef<JsValue> for StructureController
source§impl AsRef<OwnedStructure> for StructureController
impl AsRef<OwnedStructure> for StructureController
source§fn as_ref(&self) -> &OwnedStructure
fn as_ref(&self) -> &OwnedStructure
source§impl AsRef<RoomObject> for StructureController
impl AsRef<RoomObject> for StructureController
source§fn as_ref(&self) -> &RoomObject
fn as_ref(&self) -> &RoomObject
source§impl AsRef<Structure> for StructureController
impl AsRef<Structure> for StructureController
source§impl AsRef<StructureController> for StructureController
impl AsRef<StructureController> for StructureController
source§fn as_ref(&self) -> &StructureController
fn as_ref(&self) -> &StructureController
source§impl Clone for StructureController
impl Clone for StructureController
source§fn clone(&self) -> StructureController
fn clone(&self) -> StructureController
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StructureController
impl Debug for StructureController
source§impl Deref for StructureController
impl Deref for StructureController
§type Target = RoomObject
type Target = RoomObject
source§fn deref(&self) -> &RoomObject
fn deref(&self) -> &RoomObject
source§impl From<JsValue> for StructureController
impl From<JsValue> for StructureController
source§fn from(obj: JsValue) -> StructureController
fn from(obj: JsValue) -> StructureController
source§impl From<StructureController> for JsValue
impl From<StructureController> for JsValue
source§fn from(obj: StructureController) -> JsValue
fn from(obj: StructureController) -> JsValue
source§impl From<StructureController> for ObjectWithId
impl From<StructureController> for ObjectWithId
source§fn from(v: StructureController) -> ObjectWithId
fn from(v: StructureController) -> ObjectWithId
source§impl From<StructureController> for ObjectWithMaybeId
impl From<StructureController> for ObjectWithMaybeId
source§fn from(v: StructureController) -> ObjectWithMaybeId
fn from(v: StructureController) -> ObjectWithMaybeId
source§impl From<StructureController> for ObjectWithPosition
impl From<StructureController> for ObjectWithPosition
source§fn from(v: StructureController) -> ObjectWithPosition
fn from(v: StructureController) -> ObjectWithPosition
source§impl From<StructureController> for OwnedStructure
impl From<StructureController> for OwnedStructure
source§fn from(obj: StructureController) -> OwnedStructure
fn from(obj: StructureController) -> OwnedStructure
source§impl From<StructureController> for OwnedStructureObject
impl From<StructureController> for OwnedStructureObject
source§fn from(v: StructureController) -> OwnedStructureObject
fn from(v: StructureController) -> OwnedStructureObject
source§impl From<StructureController> for RoomObject
impl From<StructureController> for RoomObject
source§fn from(obj: StructureController) -> RoomObject
fn from(obj: StructureController) -> RoomObject
source§impl From<StructureController> for Structure
impl From<StructureController> for Structure
source§fn from(obj: StructureController) -> Structure
fn from(obj: StructureController) -> Structure
source§impl From<StructureController> for StructureObject
impl From<StructureController> for StructureObject
source§fn from(v: StructureController) -> StructureObject
fn from(v: StructureController) -> StructureObject
source§impl From<StructureController> for TypedRoomObject
impl From<StructureController> for TypedRoomObject
source§fn from(v: StructureController) -> TypedRoomObject
fn from(v: StructureController) -> TypedRoomObject
source§impl FromWasmAbi for StructureController
impl FromWasmAbi for StructureController
source§impl<'a> IntoWasmAbi for &'a StructureController
impl<'a> IntoWasmAbi for &'a StructureController
source§impl IntoWasmAbi for StructureController
impl IntoWasmAbi for StructureController
source§impl JsCast for StructureController
impl JsCast for StructureController
source§fn instanceof(val: &JsValue) -> bool
fn instanceof(val: &JsValue) -> bool
instanceof
check to see whether the JsValue
provided is an instance of this type. Read moresource§fn unchecked_from_js(val: JsValue) -> Self
fn unchecked_from_js(val: JsValue) -> Self
source§fn unchecked_from_js_ref(val: &JsValue) -> &Self
fn unchecked_from_js_ref(val: &JsValue) -> &Self
source§fn has_type<T>(&self) -> boolwhere
T: JsCast,
fn has_type<T>(&self) -> boolwhere T: JsCast,
T
. Read moresource§fn dyn_into<T>(self) -> Result<T, Self>where
T: JsCast,
fn dyn_into<T>(self) -> Result<T, Self>where T: JsCast,
T
. Read moresource§fn dyn_ref<T>(&self) -> Option<&T>where
T: JsCast,
fn dyn_ref<T>(&self) -> Option<&T>where T: JsCast,
T
. Read moresource§fn unchecked_into<T>(self) -> Twhere
T: JsCast,
fn unchecked_into<T>(self) -> Twhere T: JsCast,
source§fn unchecked_ref<T>(&self) -> &Twhere
T: JsCast,
fn unchecked_ref<T>(&self) -> &Twhere T: JsCast,
source§impl LongRefFromWasmAbi for StructureController
impl LongRefFromWasmAbi for StructureController
§type Abi = <JsValue as LongRefFromWasmAbi>::Abi
type Abi = <JsValue as LongRefFromWasmAbi>::Abi
RefFromWasmAbi::Abi
§type Anchor = StructureController
type Anchor = StructureController
RefFromWasmAbi::Anchor
source§unsafe fn long_ref_from_abi(js: Self::Abi) -> Self::Anchor
unsafe fn long_ref_from_abi(js: Self::Abi) -> Self::Anchor
RefFromWasmAbi::ref_from_abi
source§impl<'a> OptionIntoWasmAbi for &'a StructureController
impl<'a> OptionIntoWasmAbi for &'a StructureController
source§impl RefFromWasmAbi for StructureController
impl RefFromWasmAbi for StructureController
§type Abi = <JsValue as RefFromWasmAbi>::Abi
type Abi = <JsValue as RefFromWasmAbi>::Abi
Self
are recovered from.§type Anchor = ManuallyDrop<StructureController>
type Anchor = ManuallyDrop<StructureController>
Self
for the duration of the
invocation of the function that has an &Self
parameter. This is
required to ensure that the lifetimes don’t persist beyond one function
call, and so that they remain anonymous.source§impl TryInto<StructureController> for ObjectWithId
impl TryInto<StructureController> for ObjectWithId
source§impl TryInto<StructureController> for StructureObject
impl TryInto<StructureController> for StructureObject
source§impl TryInto<StructureController> for TypedRoomObject
impl TryInto<StructureController> for TypedRoomObject
Auto Trait Implementations§
impl RefUnwindSafe for StructureController
impl !Send for StructureController
impl !Sync for StructureController
impl Unpin for StructureController
impl UnwindSafe for StructureController
Blanket Implementations§
source§impl<T> HasId for Twhere
T: HasNativeId,
impl<T> HasId for Twhere T: HasNativeId,
source§fn raw_id(&self) -> RawObjectId
fn raw_id(&self) -> RawObjectId
source§impl<T> HasPosition for Twhere
T: AsRef<RoomObject>,
impl<T> HasPosition for Twhere T: AsRef<RoomObject>,
source§impl<T> HasTypedId<T> for Twhere
T: HasId + HasNativeId,
impl<T> HasTypedId<T> for Twhere T: HasId + HasNativeId,
source§impl<T> MaybeHasId for Twhere
T: MaybeHasNativeId,
impl<T> MaybeHasId for Twhere T: MaybeHasNativeId,
source§fn try_raw_id(&self) -> Option<RawObjectId>
fn try_raw_id(&self) -> Option<RawObjectId>
None
if the
object doesn’t currently have an id.source§impl<T> MaybeHasNativeId for Twhere
T: HasNativeId,
impl<T> MaybeHasNativeId for Twhere T: HasNativeId,
fn try_native_id(&self) -> Option<JsString>
source§impl<T> MaybeHasTypedId<T> for Twhere
T: MaybeHasId,
impl<T> MaybeHasTypedId<T> for Twhere T: MaybeHasId,
source§impl<T> OwnedStructureProperties for Twhere
T: AsRef<OwnedStructure>,
impl<T> OwnedStructureProperties for Twhere T: AsRef<OwnedStructure>,
source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere T: IntoWasmAbi,
§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
IntoWasmAbi::Abi
source§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
IntoWasmAbi::into_abi
, except that it may throw and never
return in the case of Err
.