Naev

Module commodity

Lua bindings to interact with commodities.

This will allow you to create and manipulate commodities in-game.

An example would be:

 c = commodity.get( "Food" ) -- Gets the commodity by name
 if c:price() > 500 then
    -- Do something with high price
 end
 

Functions

__eq (o1, o2) Checks to see if two commodities are the same.
get (s) Gets a commodity.
getStandard () Gets the list of standard commodities.
flags () Gets the flags that are set for a commodity.
name (c) Gets the translated name of the commodity.
nameRaw (c) Gets the raw (untranslated) name of the commodity.
price (c) Gets the base price of an commodity.
priceAt (c, p) Gets the base price of an commodity on a certain spob.
priceAtTime (c, p, t) Gets the price of an commodity on a certain spob at a certain time.
canSell (c, where) Sees if a commodity can be sold at either a spob or system.
canBuy (c, where) Sees if a commodity can be bought at either a spob or system.
icon (c) Gets the store icon of a commodity if it exists.
description (c) Gets the description of a commodity if it exists.
new (cargo, decription[, params=nil]) Creates a new temporary commodity.
illegalto (c, f) Makes a temporary commodity illegal to a faction.
illegality (Commodity) Gets the factions to which the commodity is illegal to.


Functions

__eq (o1, o2)
Checks to see if two commodities are the same.

Parameters:

  • o1 Commodity First commodity to compare.
  • o2 Commodity Second commodity to compare.

Returns:

    boolean true if both commodities are the same.

Usage:

    if o1 == o2 then -- Checks to see if commodity o1 and o2 are the same
    
get (s)
Gets a commodity.

Parameters:

  • s string Raw (untranslated) name of the commodity to get.

Returns:

    Commodity or nil The commodity matching name or nil if error.

Usage:

    s = commodity.get( "Food" ) -- Gets the food commodity
    
getStandard ()
Gets the list of standard commodities.

Returns:

    table A table containing commodity objects, namely those which are standard (buyable/sellable anywhere).
flags ()
Gets the flags that are set for a commodity.

Returns:

    table A table containing the flags as key and value as boolean.
name (c)
Gets the translated name of the commodity.

This translated name should be used for display purposes (e.g. messages). It cannot be used as an identifier for the commodity; for that, use commodity.nameRaw() instead.

Parameters:

  • c Commodity Commodity to get the translated name of.

Returns:

    string The translated name of the commodity.

Usage:

    commodityname = c:name() -- Equivalent to `_(c:nameRaw())`
    
nameRaw (c)
Gets the raw (untranslated) name of the commodity.

This untranslated name should be used for identification purposes (e.g. can be passed to commodity.get()). It should not be used directly for display purposes without manually translating it with _().

Parameters:

  • c Commodity Commodity to get the raw name of.

Returns:

    string The raw name of the commodity.

Usage:

    commodityrawname = c:nameRaw()
    
price (c)
Gets the base price of an commodity.

Parameters:

  • c Commodity Commodity to get information of.

Returns:

    number The base price of the commodity.

Usage:

    print( c:price() ) -- Prints the base price of the commodity
    
priceAt (c, p)
Gets the base price of an commodity on a certain spob.

Parameters:

  • c Commodity Commodity to get information of.
  • p Spob Spob to get price at.

Returns:

    number The price of the commodity at the spob.

Usage:

    if c:priceAt( spob.get("Polaris Prime") ) > 100 then -- Checks price
    of a commodity at polaris prime
    
priceAtTime (c, p, t)
Gets the price of an commodity on a certain spob at a certain time.

Parameters:

  • c Commodity Commodity to get information of.
  • p Spob Spob to get price at.
  • t Time Time to get the price at.

Returns:

    number The price of the commodity at the spob.

Usage:

    if c:priceAtTime( spob.get("Polaris Prime"), time ) > 100 then --
    Checks price of a commodity at polaris prime
    
canSell (c, where)
Sees if a commodity can be sold at either a spob or system.

It does not check faction standings, only if it is possible to sell at a spob or a system (checking all spobs in the system).

Parameters:

  • c Commodity Commodity to check.
  • where Spob or System Either a spob or a system to see if the commodity can be sold there.
canBuy (c, where)
Sees if a commodity can be bought at either a spob or system.

It does not check faction standings, only if it is possible to buy at a spob or a system (checking all spobs in the system).

Parameters:

  • c Commodity Commodity to check.
  • where Spob or System Either a spob or a system to see if the commodity is sold there.
icon (c)
Gets the store icon of a commodity if it exists.

Parameters:

  • c Commodity Commodity to get icon of.

Returns:

    Texture or nil Texture of the store icon if exists, otherwise nil.
description (c)
Gets the description of a commodity if it exists.

Parameters:

  • c Commodity Commodity to get decription of

Returns:

    string or nil Description of the commodity if exists, otherwise nil.
new (cargo, decription[, params=nil])
Creates a new temporary commodity. If a temporary commodity with the same name exists, that gets returned instead. "Temporary" is a relative term. The commodity will be saved with the player while it is in the inventory of their fleet. However, when all instances are gone, it will no longer be saved and disappear.

Parameters:

  • cargo string Name of the cargo to add. This must not match a cargo name defined in commodity.xml.
  • decription string Description of the cargo to add.
  • params table Table of named parameters. Currently supported is "gfx_space". (default nil)

Returns:

    Commodity The newly created commodity or an existing temporary commodity with the same name.

Usage:

    commodity.new( N_("Cheesburgers"), N_("I can has cheezburger?") )
    
illegalto (c, f)
Makes a temporary commodity illegal to a faction.

Parameters:

  • c Commodity Temporary commodity to make illegal to factions.
  • f Faction or table Faction or table of factions to make illegal to.
illegality (Commodity)
Gets the factions to which the commodity is illegal to.

Parameters:

  • Commodity c to get illegality status of.

Returns:

    table Table of all the factions the commodity is illegal to.
generated by LDoc 1.5.0 Last updated 2024-04-26 14:59:58