Ship
Derived Object created based on datafiles. Can be cast to and from an Object@.
Members
-
bool
alwaysVisible
— Whether the object can be seen from any distance.
-
uint
visibleMask
— Empire mask of which empires can see this object.
-
uint
memoryMask
— Empire mask of which empires have any memory of this object.
-
float
sightRange
— Radius around which the object can see other objects.
-
vec3d
position
— Current position in space.
-
vec3d
velocity
— Current momentary velocity.
-
vec3d
acceleration
— Current acceleration vector.
-
uint
donatedVision
— Mask of empires that this object will become visible to.
-
quaterniond
rotation
— Rotation/facing expressed as a quaternion.
-
double
radius
— Radius of the object's bounding sphere and size of its visuals.
-
double
lastTick
— Game time of the last time the object ticked.
-
int
id
— Unique identifier referring to this object.
-
Region@
region
— Member created from datafiles.
-
Component_Mover@
mover
— Member created from datafiles.
-
Component_Orbit@
orbit
— Member created from datafiles.
-
Component_LeaderAI@
leaderAI
— Member created from datafiles.
-
Component_SupportAI@
supportAI
— Member created from datafiles.
-
Component_Abilities@
abilities
— Member created from datafiles.
-
Component_Statuses@
statuses
— Member created from datafiles.
-
float
MaxEnergy
— Member created from datafiles.
-
float
Energy
— Member created from datafiles.
-
float
DPS
— Member created from datafiles.
-
float
MaxDPS
— Member created from datafiles.
-
float
Supply
— Member created from datafiles.
-
float
MaxSupply
— Member created from datafiles.
-
bool
isFTLing
— Member created from datafiles.
-
bool
isFree
— Member created from datafiles.
-
quaterniond
formationDest
— Member created from datafiles.
-
Blueprint
blueprint
— Member created from datafiles.
-
bool
delayFTL
— Member created from datafiles.
-
double
minEngagementRange
— Member created from datafiles.
-
double
maxEngagementRange
— Member created from datafiles.
Methods
-
void
set_name(
string&
Name
)
-
Empire@
get_owner(
) const
-
void
set_owner(
Empire@
emp
)
-
void
finalizeCreation(
)
-
string
get_name(
) const
-
bool
get_valid(
) const
-
bool
get_engaged(
) const
-
bool
get_named(
) const
-
bool
get_inCombat(
) const
-
bool
isFocus(
) const
-
void
focus(
)
-
bool
get_initialized(
) const
-
ObjectType
get_type(
) const
-
bool
get_selected(
) const
-
void
set_selected(
bool
value
)
-
bool
get_isPhysical(
) const
-
void
wake(
)
-
void
sleep(
double
seconds
)
-
bool
get_memorable(
) const
-
void
set_noCollide(
bool
value
)
-
bool
get_noCollide(
) const
-
void
set_engaged(
bool
value
)
-
void
set_named(
bool
value
)
-
void
set_inCombat(
bool
value
)
-
void
wait(
)
-
void
destroy(
)
-
bool
get_destroying(
)
-
void
damage(
DamageEvent&
evt,
double
position,
vec2d&
direction
)
-
void
repair(
double
amount
)
-
void
addTimedEffect(
TimedEffect&
eff
)
-
bool
isVisibleTo(
Empire&
emp
) const
-
bool
isKnownTo(
Empire&
emp
) const
-
Object@
get_targets(
uint
index
) const
-
ObjectGroup@
get_group(
)
-
const ObjectGroup@
get_group(
) const
-
Node@
getNode(
) const
-
void
scuttle(
)
-
void
retrofit(
const Design@
arg0
)
-
bool
consumeEnergy(
double
arg0
)
-
void
refundEnergy(
double
arg0
)
-
void
consumeSupply(
double
arg0
)
-
void
consumeSupplyPct(
double
arg0
)
-
bool
consumeMinSupply(
double
arg0
)
-
void
refundSupply(
double
arg0
)
-
void
repairShip(
double
arg0
)
-
void
makeNotFree(
)
-
void
setHealthPct(
float
arg0
)
-
void
modSupplyBonus(
float
arg0
)
-
void
checkOrbit(
)
-
int
get_maintenanceCost(
)
-
void
startRetrofit(
const Object@
arg0,
const Design@
arg1
)
-
void
stopRetrofit(
const Object@
arg0
)
-
void
completeRetrofit(
const Object@
arg0
)
-
void
suppress(
double
arg0
)
-
void
mangle(
double
arg0
)
-
void
startFire(
)
-
void
triggerLeaderChange(
const Object@
arg0,
const Object@
arg1
)
-
Empire@
getKillCredit(
)
-
uint
get_abilityCount(
) const
-
DataList@
getAbilities(
) const
-
uint
get_abilityTypes(
int
id
) const
-
void
activateAbility(
int
id
)
-
void
activateAbility(
int
id,
vec3d
point
)
-
void
activateAbility(
int
id,
const Object@
target
)
-
void
activateAbilityFor(
Empire&
emp,
int
id,
const Object@
target
)
-
void
activateAbilityFor(
Empire&
emp,
int
id,
vec3d
point
)
-
void
initAbilities(
const Design@
fromDesign
)
-
void
abilityTick(
double
time
)
-
void
abilityOwnerChange(
const Empire@
prevOwner,
const Empire@
newOwner
)
-
void
setNeutralAbilities(
bool
value
)
-
void
setAbilityDestroy(
bool
value
)
-
int
addAbility(
uint
id
)
-
void
createAbility(
uint
id
)
-
void
removeAbility(
int
id
)
-
void
disableAbility(
int
id
)
-
void
enableAbility(
int
id
)
-
void
writeAbilities(
Message&
msg
) const
-
bool
writeAbilityDelta(
Message&
msg
) const
-
void
readAbilities(
Message&
msg
)
-
void
readAbilityDelta(
Message&
msg
)
-
bool
get_hasAbilities(
) const
-
void
activateAbilities(
)
-
void
deactivateAbilities(
)
-
Component_Abilities@
get_Abilities(
)
-
double
getFormationRadius(
)
-
DataList@
getSupportGroups(
) const
-
uint
get_supportCount(
)
-
Object@
get_supportShip(
uint
index
)
-
double
getFleetHP(
) const
-
double
getFleetDPS(
) const
-
double
getFleetStrength(
) const
-
double
getFleetMaxStrength(
) const
-
float
getFleetEffectiveness(
) const
-
double
get_GhostHP(
) const
-
double
get_GhostDPS(
) const
-
uint
get_SupplyUsed(
) const
-
uint
get_SupplyCapacity(
) const
-
uint
get_SupplyAvailable(
) const
-
bool
get_hasOrders(
)
-
bool
hasOrder(
uint
type,
bool
checkQueued = false
)
-
uint
get_orderCount(
)
-
string
get_orderName(
uint
num
)
-
uint
get_orderType(
uint
num
) const
-
bool
get_orderHasMovement(
uint
num
) const
-
vec3d
get_orderMoveDestination(
uint
num
) const
-
vec3d
get_finalMoveDestination(
) const
-
int
getRetrofitCost(
) const
-
double
getRetrofitLabor(
) const
-
uint
getGhostCount(
const Design@
design
) const
-
uint
getAutoMode(
)
-
uint
getEngageType(
)
-
uint
getEngageBehave(
)
-
bool
get_autoBuySupports(
) const
-
bool
get_autoFillSupports(
) const
-
void
addGotoOrder(
Object&
target,
bool
append = false
)
-
void
addAttackOrder(
Object&
target,
bool
append = false
)
-
void
addAbilityOrder(
int
abilityId,
vec3d
target,
bool
append = false
)
-
void
addCaptureOrder(
Planet&
target,
bool
append = false
)
-
void
addPickupOrder(
Pickup&
target,
bool
append = false
)
-
void
addMoveOrder(
vec3d
target,
bool
append = false
)
-
void
addMoveOrder(
vec3d
target,
quaterniond
facing,
bool
append = false
)
-
void
addHyperdriveOrder(
vec3d
target,
bool
append = false
)
-
void
addFlingOrder(
Orbital&
beacon,
vec3d
target,
bool
append = false
)
-
void
addScanOrder(
Anomaly&
target,
bool
append = false
)
-
void
addRefreshOrder(
Object&
target,
bool
append = false
)
-
void
addOddityGateOrder(
Oddity&
target,
bool
append = false
)
-
void
addSlipstreamOrder(
vec3d
target,
bool
append = false
)
-
void
addAutoExploreOrder(
bool
useFTL,
bool
append = false
)
-
void
addSecondaryToSlipstream(
Object&
other
)
-
void
addWaitOrder(
const Object@
waitingFor = null,
bool
append = false,
bool
moveTo = false
)
-
void
moveAfterWait(
vec3d
position,
const Object@
waitingFor = null
)
-
void
clearOrders(
)
-
void
insertMoveOrder(
vec3d
target,
uint
index
)
-
void
insertHyperdriveOrder(
vec3d
target,
uint
index
)
-
void
insertFlingOrder(
Orbital&
beacon,
vec3d
target,
uint
index
)
-
void
transferSupports(
const Design@
ofDesign,
uint
amount,
const Object@
transferTo
)
-
void
orderSupports(
const Design@
ofDesign,
uint
amount
)
-
void
scuttleSupports(
const Design@
ofDesign,
uint
amount
)
-
void
rebuildAllGhosts(
)
-
void
clearAllGhosts(
)
-
void
retrofitFleetAt(
const Object@
obj
)
-
void
setAutoMode(
uint
type
)
-
void
setEngageType(
uint
type
)
-
void
setEngageBehave(
uint
type
)
-
void
setHoldPosition(
bool
hold
)
-
void
refreshSupportsFrom(
const Object@
obj,
bool
keepGhosts = false
)
-
void
set_autoBuySupports(
bool
value
)
-
void
set_autoFillSupports(
bool
value
)
-
void
orderTick(
double
time
)
-
void
registerSupport(
const Object@
obj,
bool
pickup = false,
bool
force = false
)
-
void
unregisterSupport(
const Object@
obj,
bool
destroyed = false
)
-
void
set_canGainSupports(
bool
value
)
-
bool
get_canGainSupports(
) const
-
bool
canTakeSupport(
int
size,
bool
pickup = true
) const
-
void
takeoverFleet(
const Empire@
newOwner,
double
supportRatio = 1.0,
bool
moveToTerritory = false
)
-
void
leaderInit(
)
-
void
leaderDestroy(
)
-
void
leaderPostLoad(
)
-
void
leaderTick(
double
time
)
-
void
leaderChangeOwner(
const Empire@
oldOwner,
const Empire@
newOwner
)
-
void
leaderRegionChanged(
)
-
void
modSupplyCapacity(
int
amt
)
-
void
repairFleet(
double
amount,
bool
spread = true
)
-
void
finishFleetRetrofit(
const Object@
at
)
-
void
stopFleetRetrofit(
const Object@
at
)
-
void
postSupportRetrofit(
const Ship@
support,
const Design@
prevDesign,
const Design@
newDesign
)
-
void
updateFleetStrength(
)
-
void
modBonusDPS(
double
amount
)
-
void
idleAllSupports(
)
-
void
teleportTo(
vec3d
position,
bool
movementPart = false
)
-
void
addSupportGhosts(
const Design@
ofDesign,
uint
amount
)
-
void
addSupportOrdered(
const Design@
ofDesign,
uint
amount
)
-
void
supportBuildStarted(
uint
id,
const Design@
dsg,
const Object@
shipyard
)
-
void
supportBuildFinished(
uint
id,
const Design@
dsg,
const Object@
shipyard,
const Ship@
ship
)
-
uint
getSupportCount(
const Design@
design
) const
-
bool
get_hasOrderedSupports(
) const
-
void
setFleetEffectiveness(
float
value
)
-
void
modFleetEffectiveness(
float
value
)
-
double
get_slowestSupportAccel(
) const
-
void
set_engageRange(
double
radius
)
-
void
writeLeaderAI(
Message&
msg
) const
-
bool
writeLeaderAIDelta(
Message&
msg
) const
-
void
readLeaderAI(
Message&
msg
)
-
void
readLeaderAIDelta(
Message&
msg
)
-
bool
get_hasLeaderAI(
) const
-
void
activateLeaderAI(
)
-
void
deactivateLeaderAI(
)
-
Component_LeaderAI@
get_LeaderAI(
)
-
bool
get_inFTL(
) const
-
bool
get_isMoving(
) const
-
vec3d
get_moveDestination(
) const
-
bool
get_hasMovePath(
) const
-
DataList@
getMovePath(
) const
-
double
get_ftlSpeed(
) const
-
bool
get_isColliding(
) const
-
vec3d
get_internalDestination(
) const
-
double
get_maxAcceleration(
) const
-
void
set_maxAcceleration(
double
accel
)
-
void
set_rotationSpeed(
float
speed
)
-
double
moverTick(
double
time
)
-
bool
moveTo(
vec3d
point,
int&
id,
bool
doPathing = true,
bool
enterOrbit = true
)
-
bool
moveTo(
Object&
target,
int&
id,
double
distance = 0,
bool
doPathing = true,
bool
enterOrbit = true
)
-
bool
rotateTo(
quaterniond
rotation,
int&
id
)
-
void
setRotation(
quaterniond
rotation
)
-
bool
FTLTo(
vec3d
point,
double
speed,
int&
id
)
-
void
FTLTo(
vec3d
point,
double
speed
)
-
void
FTLDrop(
)
-
void
stopMoving(
bool
doPathing = true,
bool
enterOrbit = true
)
-
void
clearMovement(
)
-
void
setCombatFacing(
quaterniond&
rotation
)
-
void
clearCombatFacing(
)
-
void
checkOrbitObject(
vec3d
destPoint
)
-
void
createPathTowards(
vec3d
destPoint
)
-
void
updatePath(
)
-
Object@
getLockedOrbit(
bool
requireLock = true
)
-
void
speedBoost(
double
amount
)
-
void
flagPositionUpdate(
)
-
void
impulse(
vec3d
ForceSeconds
)
-
void
rotate(
quaterniond
rot
)
-
bool
get_leaderLock(
) const
-
void
set_leaderLock(
bool
doLock
)
-
bool
writeMoverDelta(
Message&
msg
) const
-
void
writeMover(
Message&
msg
) const
-
void
readMoverDelta(
Message&
msg
)
-
void
readMover(
Message&
msg
)
-
Component_Mover@
get_Mover(
)
-
void
orbitTick(
double
time
)
-
void
orbitAround(
vec3d
point
)
-
void
orbitAround(
double
minRadius,
vec3d
point
)
-
void
orbitAround(
vec3d
point,
double
radius
)
-
void
orbitAround(
Object&
around
)
-
void
orbitAround(
Object&
around,
double
radius
)
-
void
orbitAround(
Object&
around,
double
radius,
double
angle
)
-
void
orbitAround(
vec3d
position,
vec3d
origin
)
-
void
orbitSpin(
double
dayLength
)
-
void
setOrbitPct(
double
pct
)
-
void
writeOrbit(
Message&
msg
) const
-
bool
writeOrbitDelta(
Message&
msg
) const
-
Object@
getOrbitingAround(
)
-
void
readOrbit(
Message&
msg
)
-
void
readOrbitDelta(
Message&
msg
)
-
bool
get_hasOrbit(
) const
-
void
activateOrbit(
)
-
void
deactivateOrbit(
)
-
Component_Orbit@
get_Orbit(
)
-
uint
get_statusEffectCount(
)
-
DataList@
getStatusEffects(
)
-
bool
hasStatusEffect(
uint
typeId
)
-
int
addStatus(
double
timer,
uint
typeId,
const Empire@
boundEmpire = null,
const Region@
boundRegion = null
)
-
void
addStatus(
uint
typeId,
double
timer = -1.0,
const Empire@
boundEmpire = null,
const Region@
boundRegion = null
)
-
void
removeStatus(
int
id
)
-
void
removeStatusType(
uint
typeId
)
-
void
removeRegionBoundStatus(
const Region@
region,
uint
typeId,
double
timer = -1.0
)
-
void
addRandomCondition(
)
-
void
changeStatusOwner(
const Empire@
prevOwner,
const Empire@
newOwner
)
-
void
changeStatusRegion(
const Region@
prevRegion,
const Region@
newRegion
)
-
void
statusTick(
double
time
)
-
void
destroyStatus(
)
-
void
writeStatuses(
Message&
msg
) const
-
bool
writeStatusDelta(
Message&
msg
) const
-
void
readStatuses(
Message&
msg
)
-
void
readStatusDelta(
Message&
msg
)
-
bool
get_hasStatuses(
) const
-
void
activateStatuses(
)
-
void
deactivateStatuses(
)
-
Component_Statuses@
get_Statuses(
)
-
void
transferTo(
const Object@
leader
)
-
void
transferTo(
const Object@
leader,
vec3d
newOffset
)
-
void
setFleetOffset(
vec3d
offset
)
-
void
completeRegisterLeader(
const Object@
leader
)
-
void
supportDestroy(
)
-
void
supportTick(
double
time
)
-
void
supportScuttle(
)
-
void
clearLeader(
const Object@
prevLeader
)
-
void
preventExpire(
)
-
void
writeSupportAI(
Message&
msg
) const
-
bool
writeSupportAIDelta(
Message&
msg
) const
-
void
supportAttack(
const Object@
target
)
-
void
supportInterfere(
const Object@
target,
const Object@
protect
)
-
void
supportRetreat(
)
-
void
supportIdle(
)
-
void
set_supportEngageRange(
double
range
)
-
void
readSupportAI(
Message&
msg
)
-
void
readSupportAIDelta(
Message&
msg
)
-
bool
get_hasSupportAI(
) const
-
void
activateSupportAI(
)
-
void
deactivateSupportAI(
)
-
Component_SupportAI@
get_SupportAI(
)
-
Object@
get_Leader(
) const
-
void
set_Leader(
Object@
value
)
-
Object@
get_RetrofittingAt(
) const
-
void
set_RetrofittingAt(
Object@
value
)
Empire@
get_owner(
) const
Returns
Empire@
: The empire that owns this object.
void
finalizeCreation(
)
Finalize the creation of this object. Should only be called on objects that were created with delayedCreation set to true.
string
get_name(
) const
Returns
string
: Name of the object.
bool
get_valid(
) const
Returns
bool
: Whether the object is valid and not a zombie. Zombies are objects that have already been destroyed but are awaiting disposal.
bool
isFocus(
) const
Returns
bool
: Whether the object is a focus object. Focus objects have higher priority for interpolation and syncing.
void
focus(
)
Mark the object as a focus object. Focus decays and should be set periodically on accessed objects.
void
wake(
)
Tells the processing threads to tick the object next time (ignoring requested timeout)
void
wait(
)
Waits for all asynchronous messages to finish on this object. This is considered a relocking operation.
void
damage(
DamageEvent&
evt,
double
position,
vec2d&
direction
)
Deal damage to the object from a particular direction.
-
DamageEvent&
evt — Event relating information about the damage dealt.
-
double
position — Position between 0 and 1 on the side that is hit.
-
vec2d&
direction — Direction vector towards the object of the damage.
Object@
get_targets(
uint
index
) const
Retrieve one of the targeting system targets the object is holding.
-
uint
index — Index of the object to retrieve (maximum TARGET_COUNT).
Returns
Object@
: Held object by the targetting system.
Node@
getNode(
) const
Returns the node associated with the object. Asynchronous.
Component_Mover@
get_Mover(
)
Returns the component handle for this type of component.
Component_Orbit@
get_Orbit(
)
Returns the component handle for this type of component.
Object@
get_Leader(
) const
Member created from datafiles.
Object@
get_RetrofittingAt(
) const
Member created from datafiles.