Zum Inhalt

company_progression_util

Quelle: base/tealdef/game_mechanics/company/company_progression_util.d.tl

Hinweise

Erfahrung und Rang des Unternehmens, gelesen aus dem Game-Script ::game_mechanics/company/company_progression.gs.

CompaniesGrowthState

record global base/tealdef/game_mechanics/company/company_progression_util.d.tl:3

global record CompaniesGrowthState

Hinweise

Zustand des Game-Scripts für den Unternehmensfortschritt.

Felder

Name Typ Beschreibung
companyState {Engine.Entity : CompanyData} Spieler-Entität -> Fortschritt.

CompaniesGrowthState.CompanyData

record base/tealdef/game_mechanics/company/company_progression_util.d.tl:4

record CompanyData

Hinweise

Fortschritt eines Unternehmens.

Im Basisspiel verwendet: 9-mal in 3 Dateien

base/content/game_mechanics/game_mechanics/company/company.tl:865

local companyProgressionState = engine_react_util.useStepState(function() : CompaniesGrowthState.CompanyData
base/content/game_mechanics/game_mechanics/company/company_progression_util.tl:42
local function getNumberOfExtraPermits(extraPermitsAggregatedPerRank : {string : {{integer, integer}}}, companyData : CompaniesGrowthState.CompanyData, permitKe
base/content/game_mechanics/game_mechanics/company/company_util.tl:33
local calculateNumberOfPermits = function(companyProgress : CompaniesGrowthState.CompanyData, metadata : ConstructionDescMetadata, accumulate : boolean) : integ

Felder

Name Typ Beschreibung
experience integer Erfahrungspunkte. Nie weniger als die höchste bisher erreichte Weltbevölkerung.
level integer Rang, den der Spieler übernommen hat (schaltet Boni frei).
potentialLevel integer Rang, der nach Erfahrung erreicht ist. Der Spieler übernimmt ihn mit applyLevel.
ticketPriceMultiplier number Ticketpreis-Multiplikator des erreichten Rangs oder nil.

CompanyProgressionUtil

record global base/tealdef/game_mechanics/company/company_progression_util.d.tl:13

global record CompanyProgressionUtil

Laden: local company_progression_util = ug_require "::/game_mechanics/company/company_progression_util.tl" as CompanyProgressionUtil

Hinweise

Erfahrung und Rang des Unternehmens.

Funktionen

getXpNeededForRank(basePopulation : integer, rank : integer) : integer base/tealdef/game_mechanics/company/company_progression_util.d.tl:14

Aufruf: company_progression_util.getXpNeededForRank(…)

Hinweise

Gibt die Erfahrung zurück, die ein Rang braucht.

Parameter Typ Beschreibung
basePopulation integer Weltbevölkerung beim Spielstart.
rank integer Rang.

Rückgabe integer: Erfahrung (0 für Ränge unter 1).

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/game_mechanics/game_mechanics/company/company_react_util.tl:88

rank.requiredExp = company_progression_util.getXpNeededForRank(basePopulation, i)

getMaxRank() : integer base/tealdef/game_mechanics/company/company_progression_util.d.tl:15

Aufruf: company_progression_util.getMaxRank(…)

Hinweise

Gibt den höchsten Rang zurück.

Rückgabe integer: 15.

Im Basisspiel verwendet: 5-mal in 4 Dateien

base/content/game_mechanics/game_mechanics/achievements/achievements.script.tl:285

local maxRank : integer = company_progression_util.getMaxRank()
base/content/game_mechanics/game_mechanics/company/company_react_util.tl:84
for i=1,company_progression_util.getMaxRank() do
base/content/game_mechanics/game_mechanics/subventions/subvention_util.tl:19
local companyMaxRank = math.max(company_progression_util.getMaxRank(), 2)
base/content/gui/gui/game_bar/game_bar.tl:397
if potentialLevel == company_progression_util.getMaxRank() then

getTicketPriceMultiplierForLevel(level : integer) : number base/tealdef/game_mechanics/company/company_progression_util.d.tl:16

Aufruf: company_progression_util.getTicketPriceMultiplierForLevel(…)

Hinweise

Gibt den Ticketpreis-Multiplikator eines Rangs zurück. Er steigt linear von 1 bei Rang 1 bis ticketPriceMultiplierAtMaxLevel beim höchsten Rang.

Parameter Typ Beschreibung
level integer Rang.

Rückgabe number: Multiplikator, oder nil bei Rang 1 oder wenn der Multiplikator in der Konfiguration 1 ist.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/game_mechanics/game_mechanics/company/company_growth.script.tl:48

scriptState.companyState[companyEntity].ticketPriceMultiplier = company_progression_util.getTicketPriceMultiplierForLevel(newLevel)

getExtraPermits(companyData : CompaniesGrowthState.CompanyData) : {ResName : integer} base/tealdef/game_mechanics/company/company_progression_util.d.tl:17

Aufruf: company_progression_util.getExtraPermits(…)

Hinweise

Gibt für jeden Genehmigungsschlüssel die Genehmigungen zurück, die das Unternehmen über seinen Rang gewonnen hat.

Parameter Typ Beschreibung
companyData CompaniesGrowthState.CompanyData Fortschritt des Unternehmens.

Rückgabe {ResName : integer}: Genehmigungsschlüssel -> Anzahl Genehmigungen.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/game_mechanics/game_mechanics/company/company_util.tl:93

result.extraPermits = company_progression_util.getExtraPermits(progressionState)

getNumberOfExtraPermits(companyData : CompaniesGrowthState.CompanyData, permitKey : ResName) : integer base/tealdef/game_mechanics/company/company_progression_util.d.tl:18

Aufruf: company_progression_util.getNumberOfExtraPermits(…)

Hinweise

Gibt die Genehmigungen eines Genehmigungsschlüssels zurück, die das Unternehmen über seinen Rang gewonnen hat.

Parameter Typ Beschreibung
companyData CompaniesGrowthState.CompanyData Fortschritt des Unternehmens.
permitKey ResName Genehmigungsschlüssel.

Rückgabe integer: Anzahl Genehmigungen.

Im Basisspiel verwendet: 2-mal in 2 Dateien

base/content/game_mechanics/game_mechanics/company/company_react_util.tl:53

permits = (permits or 0) + company_progression_util.getNumberOfExtraPermits({level = rank.level}, actualPermitKey)
base/content/game_mechanics/game_mechanics/company/company_util.tl:78
local extraPermits = company_progression_util.getNumberOfExtraPermits(companyProgress, actualPermitKey)

getCompanyProgressionState(entity : Engine.Entity) : CompaniesGrowthState.CompanyData base/tealdef/game_mechanics/company/company_progression_util.d.tl:19

Aufruf: company_progression_util.getCompanyProgressionState(…)

Hinweise

Liest den Fortschritt eines Unternehmens. Ist in der Wachstumskonfiguration enforcedLevel gesetzt, ersetzt es den Rang.

Parameter Typ Beschreibung
entity Engine.Entity Spieler-Entität.

Rückgabe CompaniesGrowthState.CompanyData: Fortschritt oder nil.

Im Basisspiel verwendet: 8-mal in 6 Dateien

base/content/game_mechanics/game_mechanics/company/company.tl:866

return company_progression_util.getCompanyProgressionState(api.engine.util.getPlayer())
base/content/game_mechanics/game_mechanics/company/company_react_util.tl:212
local progressionState = company_progression_util.getCompanyProgressionState(companyEntity)
base/content/game_mechanics/game_mechanics/company/company_util.tl:87
local progressionState = company_progression_util.getCompanyProgressionState(companyEntity)
base/content/game_mechanics/game_mechanics/subventions/subventions.script.tl:245
local companyProgressionState = company_progression_util.getCompanyProgressionState(api.engine.util.getPlayer())
base/content/gui/gui/construction/construction.tl:210
local companyProgress = company_progression_util.getCompanyProgressionState(api.engine.util.getPlayer())
base/content/gui/gui/game_bar/game_bar.tl:389
local companyProgressionState = company_progression_util.getCompanyProgressionState(api.engine.util.getPlayer())

getLevelAndFraction(basePopulation : integer, exp : integer) : integer, number, integer, integer base/tealdef/game_mechanics/company/company_progression_util.d.tl:22

Aufruf: company_progression_util.getLevelAndFraction(…)

return: current level, fraction/percentage reached of current level, experience needed for current level, experience needed for next level

Rückgabe integer, number, integer, integer

Im Basisspiel verwendet: 3-mal in 3 Dateien

base/content/game_mechanics/game_mechanics/company/company_growth.script.tl:39

local newLevel = company_progression_util.getLevelAndFraction(basePopulation, exp)
base/content/game_mechanics/game_mechanics/subventions/subventions.script.tl:250
companyRank = company_progression_util.getLevelAndFraction(basePopulation, experience)
base/content/gui/gui/game_bar/game_bar.tl:393
local _level, _fraction, expForCurrLevel, expForNextLevel : integer, number, integer, integer = company_progression_util.getLevelAndFraction(basePopulation, exp

CompanyGrowthConfig

record global base/tealdef/game_mechanics/company/company_progression_util.d.tl:25

global record CompanyGrowthConfig

Hinweise

Konfiguration des Unternehmenswachstums (Ressource vom Typ game_script_config, ::/game_mechanics/company/company_growth_config.res).

Felder

Name Typ Beschreibung
enforcedLevel integer default/vanilla is nil
ticketPriceMultiplierAtMaxLevel number Ticketpreis-Multiplikator beim höchsten Rang (im Basisspiel 0,5).