Documentation

Weapon extends AbstractWeapon
in package
Uses RaceID

Defines a concrete realization of a weapon type for ships/planets.

Table of Contents

Constants

BONUS_ACCURACY  = 4
BONUS_DAMAGE  = 15
HIGHEST_POWER_LEVEL  = 5
PLANET_DAMAGE_MOD  = 0.2
Reduce the damage done to planets by this factor

Properties

$bonusAccuracy  : bool
$bonusDamage  : bool
$damageRollover  : bool
$raceID  : int
$weaponType  : WeaponType
$weaponTypeID  : int

Methods

canShootForces()  : bool
canShootPlanets()  : bool
canShootPorts()  : bool
canShootTraders()  : bool
getArmourDamage()  : int
Return the weapon armour damage.
getBaseAccuracy()  : int
Return the weapon base accuracy.
getBuyerRestriction()  : BuyerRestriction
getBuyHREF()  : string
getCost()  : int
Weapon cost is increased by 100% for each enhancement present
getDamage()  : WeaponDamageData
getModifiedAccuracy()  : float
getModifiedAccuracyAgainstForces()  : float
getModifiedAccuracyAgainstPlanet()  : float
getModifiedAccuracyAgainstPlayer()  : float
getModifiedAccuracyAgainstPort()  : float
getModifiedDamageAgainstForces()  : WeaponDamageData
getModifiedDamageAgainstPlanet()  : WeaponDamageData
getModifiedDamageAgainstPlayer()  : WeaponDamageData
getModifiedDamageAgainstPort()  : WeaponDamageData
getModifiedForceDamageAgainstPlayer()  : WeaponDamageData
getModifiedPlanetAccuracy()  : float
getModifiedPlanetAccuracyAgainstPlayer()  : float
getModifiedPlanetDamageAgainstPlayer()  : WeaponDamageData
getModifiedPortAccuracy()  : float
getModifiedPortAccuracyAgainstPlayer()  : float
getModifiedPortDamageAgainstPlayer()  : WeaponDamageData
getName()  : string
Return weapon name suitable for HTML display.
getPlayerLevelAccuracyMod()  : float
getPowerLevel()  : int
getRaceID()  : int
getRaceName()  : string
getSellHREF()  : string
getShieldDamage()  : int
Return the weapon shield damage.
getWeapon()  : self
getWeaponTypeID()  : int
hasBonusAccuracy()  : bool
hasBonusDamage()  : bool
isDamageRollover()  : bool
isUniqueType()  : bool
Ships are only allowed to equip one of each type of Unique weapon
setBonusAccuracy()  : void
setBonusDamage()  : void
shootForces()  : ForceTakenDamageData, KillResults?: array{}}
shootPlanet()  : TakenDamageData, KillResults?: array{}}
shootPlayer()  : TakenDamageData, KillResults?: array{DeadExp: int, KillerExp: int, KillerCredits: int}}
shootPlayerAsForce()  : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
shootPlayerAsPlanet()  : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
shootPlayerAsPort()  : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
shootPort()  : TakenDamageData, KillResults?: array{}}
__construct()  : mixed
checkHit()  : bool
Given $weaponAccuracy as a percent, decide if the weapon hits.
doForceDamageToPlayer()  : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
doPlanetDamageToPlayer()  : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
doPlayerDamageToForce()  : ForceTakenDamageData, KillResults?: array{}}
doPlayerDamageToPlanet()  : TakenDamageData, KillResults?: array{}}
doPlayerDamageToPlayer()  : TakenDamageData, KillResults?: array{DeadExp: int, KillerExp: int, KillerCredits: int}}
doPlayerDamageToPort()  : TakenDamageData, KillResults?: array{}}
doPortDamageToPlayer()  : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
getWeightedRandomForPlayer()  : WeightedRandom
getNumberOfEnhancements()  : int
hasEnhancements()  : bool

Constants

BONUS_ACCURACY

protected mixed BONUS_ACCURACY = 4

BONUS_DAMAGE

protected mixed BONUS_DAMAGE = 15

HIGHEST_POWER_LEVEL

protected mixed HIGHEST_POWER_LEVEL = 5

PLANET_DAMAGE_MOD

Reduce the damage done to planets by this factor

protected mixed PLANET_DAMAGE_MOD = 0.2

Properties

$bonusAccuracy

protected bool $bonusAccuracy = false

$bonusDamage

protected bool $bonusDamage = false

$damageRollover

protected bool $damageRollover = false

$weaponTypeID read-only

protected int $weaponTypeID

Methods

canShootForces()

public canShootForces() : bool
Return values
bool

canShootPlanets()

public canShootPlanets() : bool
Return values
bool

canShootPorts()

public canShootPorts() : bool
Return values
bool

canShootTraders()

public canShootTraders() : bool
Return values
bool

getArmourDamage()

Return the weapon armour damage.

public getArmourDamage() : int
Return values
int

getBaseAccuracy()

Return the weapon base accuracy.

public getBaseAccuracy() : int
Return values
int

getBuyHREF()

public getBuyHREF(Location $location) : string
Parameters
$location : Location
Return values
string

getCost()

Weapon cost is increased by 100% for each enhancement present

public getCost() : int
Return values
int

getDamage()

public getDamage() : WeaponDamageData
Return values
WeaponDamageData

getModifiedDamageAgainstForces()

public getModifiedDamageAgainstForces(AbstractPlayer $weaponPlayer, Force $forces) : WeaponDamageData
Parameters
$weaponPlayer : AbstractPlayer
$forces : Force
Return values
WeaponDamageData

getModifiedDamageAgainstPort()

public getModifiedDamageAgainstPort(AbstractPlayer $weaponPlayer, Port $port) : WeaponDamageData
Parameters
$weaponPlayer : AbstractPlayer
$port : Port
Return values
WeaponDamageData

getModifiedForceDamageAgainstPlayer()

public getModifiedForceDamageAgainstPlayer(Force $forces, AbstractPlayer $targetPlayer) : WeaponDamageData
Parameters
$forces : Force
$targetPlayer : AbstractPlayer
Return values
WeaponDamageData

getModifiedPlanetAccuracy()

public getModifiedPlanetAccuracy(Planet $planet) : float
Parameters
$planet : Planet
Return values
float

getModifiedPlanetDamageAgainstPlayer()

public getModifiedPlanetDamageAgainstPlayer(Planet $planet, AbstractPlayer $targetPlayer) : WeaponDamageData
Parameters
$planet : Planet
$targetPlayer : AbstractPlayer
Return values
WeaponDamageData

getModifiedPortAccuracy()

public getModifiedPortAccuracy(Port $port) : float
Parameters
$port : Port
Return values
float

getModifiedPortDamageAgainstPlayer()

public getModifiedPortDamageAgainstPlayer(Port $port, AbstractPlayer $targetPlayer) : WeaponDamageData
Parameters
$port : Port
$targetPlayer : AbstractPlayer
Return values
WeaponDamageData

getName()

Return weapon name suitable for HTML display.

public getName() : string

The name is displayed in green with pluses if enhancements are present.

Return values
string

getPowerLevel()

public getPowerLevel() : int
Return values
int

getRaceID()

public getRaceID() : int
Return values
int

getRaceName()

public getRaceName() : string
Return values
string

getSellHREF()

public getSellHREF(Location $location, int $orderID) : string
Parameters
$location : Location
$orderID : int
Return values
string

getShieldDamage()

Return the weapon shield damage.

public getShieldDamage() : int
Return values
int

getWeapon()

public static getWeapon(int $weaponTypeID[, DatabaseRecord $dbRecord = null ]) : self
Parameters
$weaponTypeID : int
$dbRecord : DatabaseRecord = null
Return values
self

getWeaponTypeID()

public getWeaponTypeID() : int
Return values
int

hasBonusAccuracy()

public hasBonusAccuracy() : bool
Return values
bool

hasBonusDamage()

public hasBonusDamage() : bool
Return values
bool

isDamageRollover()

public isDamageRollover() : bool
Return values
bool

isUniqueType()

Ships are only allowed to equip one of each type of Unique weapon

public isUniqueType() : bool
Return values
bool

setBonusAccuracy()

public setBonusAccuracy(bool $bonusAccuracy) : void
Parameters
$bonusAccuracy : bool

setBonusDamage()

public setBonusDamage(bool $bonusDamage) : void
Parameters
$bonusDamage : bool

shootForces()

public shootForces(AbstractPlayer $weaponPlayer, Force $forces) : ForceTakenDamageData, KillResults?: array{}}
Parameters
$weaponPlayer : AbstractPlayer
$forces : Force
Return values
ForceTakenDamageData, KillResults?: array{}}

shootPlanet()

public shootPlanet(AbstractPlayer $weaponPlayer, Planet $planet) : TakenDamageData, KillResults?: array{}}
Parameters
$weaponPlayer : AbstractPlayer
$planet : Planet
Return values
TakenDamageData, KillResults?: array{}}

shootPlayer()

public shootPlayer(AbstractPlayer $weaponPlayer, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, KillerExp: int, KillerCredits: int}}
Parameters
$weaponPlayer : AbstractPlayer
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, KillerExp: int, KillerCredits: int}}

shootPlayerAsForce()

public shootPlayerAsForce(Force $forces, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
Parameters
$forces : Force
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}

shootPlayerAsPlanet()

public shootPlayerAsPlanet(Planet $planet, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
Parameters
$planet : Planet
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}

shootPlayerAsPort()

public shootPlayerAsPort(Port $port, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
Parameters
$port : Port
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}

shootPort()

public shootPort(AbstractPlayer $weaponPlayer, Port $port) : TakenDamageData, KillResults?: array{}}
Parameters
$weaponPlayer : AbstractPlayer
$port : Port
Return values
TakenDamageData, KillResults?: array{}}

checkHit()

Given $weaponAccuracy as a percent, decide if the weapon hits.

protected checkHit(AbstractPlayer $player, float $weaponAccuracy) : bool
Parameters
$player : AbstractPlayer
$weaponAccuracy : float
Return values
bool

doForceDamageToPlayer()

protected doForceDamageToPlayer(AbstractPlayer, Hit: bool} $return, Force $forces, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
Parameters
$return : AbstractPlayer, Hit: bool}
$forces : Force
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}

doPlanetDamageToPlayer()

protected doPlanetDamageToPlayer(AbstractPlayer, Hit: bool} $return, Planet $planet, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
Parameters
$return : AbstractPlayer, Hit: bool}
$planet : Planet
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}

doPlayerDamageToForce()

protected doPlayerDamageToForce(Force, Hit: bool} $return, AbstractPlayer $weaponPlayer, Force $forces) : ForceTakenDamageData, KillResults?: array{}}
Parameters
$return : Force, Hit: bool}
$weaponPlayer : AbstractPlayer
$forces : Force
Return values
ForceTakenDamageData, KillResults?: array{}}

doPlayerDamageToPlanet()

protected doPlayerDamageToPlanet(Planet, Hit: bool} $return, AbstractPlayer $weaponPlayer, Planet $planet) : TakenDamageData, KillResults?: array{}}
Parameters
$return : Planet, Hit: bool}
$weaponPlayer : AbstractPlayer
$planet : Planet
Return values
TakenDamageData, KillResults?: array{}}

doPlayerDamageToPlayer()

protected doPlayerDamageToPlayer(AbstractPlayer, Hit: bool} $return, AbstractPlayer $weaponPlayer, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, KillerExp: int, KillerCredits: int}}
Parameters
$return : AbstractPlayer, Hit: bool}
$weaponPlayer : AbstractPlayer
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, KillerExp: int, KillerCredits: int}}

doPlayerDamageToPort()

protected doPlayerDamageToPort(Port, Hit: bool} $return, AbstractPlayer $weaponPlayer, Port $port) : TakenDamageData, KillResults?: array{}}
Parameters
$return : Port, Hit: bool}
$weaponPlayer : AbstractPlayer
$port : Port
Return values
TakenDamageData, KillResults?: array{}}

doPortDamageToPlayer()

protected doPortDamageToPlayer(AbstractPlayer, Hit: bool} $return, Port $port, AbstractPlayer $targetPlayer) : TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}
Parameters
$return : AbstractPlayer, Hit: bool}
$port : Port
$targetPlayer : AbstractPlayer
Return values
TakenDamageData, KillResults?: array{DeadExp: int, LostCredits: int}}

getNumberOfEnhancements()

private getNumberOfEnhancements() : int
Return values
int

hasEnhancements()

private hasEnhancements() : bool
Return values
bool

        
On this page

Search results