technology_s Struct Reference

This is the technology parsed from research.ufo. More...

#include <cp_research.h>

Collaboration diagram for technology_s:
Collaboration graph
[legend]

Data Fields

char * id
int idx
char * name
descriptions_t description
descriptions_t preDescription
researchType_t type
struct technology_sredirect
requirements_t requireAND
requirements_t requireOR
qboolean statusCollected
char * provides
float overallTime
float time
int delay
researchStatus_t statusResearch
char * finishedResearchEvent
struct base_sbase
int scientists
char * image
char * mdl
int statusResearchable
int produceTime
mailSentType_t mailSent
requirements_t requireForProduction
date_t preResearchedDate
date_t researchedDate
markResearched_t markResearched
struct pediaChapter_supChapter
struct technology_supPrev
struct technology_supNext
techMail_t mail [TECHMAIL_MAX]
int numTechMails
struct technology_shashNext
struct technology_shashProvidedNext

Detailed Description

This is the technology parsed from research.ufo.

Definition at line 141 of file cp_research.h.


Field Documentation

Todo:
Number in days the system should wait until the tech is available for research. Starting from the first time all other dependencies have been fulfilled and counting only if a day has passed and they still are met.

Definition at line 163 of file cp_research.h.

Descriptions of researched item.

Definition at line 145 of file cp_research.h.

Referenced by RS_ParseTechnologies(), RS_ResearchFinish(), RS_ScriptSanityCheck(), and UP_Article().

NULL or string with scriptable commands that are executed after the tech was successfully researched

Definition at line 168 of file cp_research.h.

Referenced by RS_ResearchFinish().

Definition at line 200 of file cp_research.h.

Referenced by RS_GetTechByID(), RS_GetTechIdxByName(), and RS_ParseTechnologies().

Definition at line 201 of file cp_research.h.

Referenced by RS_GetTechByProvided(), and RS_ParseTechnologies().

Self-link in the global list

Definition at line 143 of file cp_research.h.

Referenced by AL_FillInContainment(), RS_AssignScientist(), RS_GetTechIdxByName(), RS_ParseTechnologies(), and UP_GenerateArticlesSummary().

Image to display in the Ufopedia and other menus for this tech. If not set in the .ufo file this is auto-set in RS_InitTree.

See also:
cl_research.c: RS_InitTree

Definition at line 173 of file cp_research.h.

Referenced by AC_AlienClick(), RS_InitTree(), RS_UpdateInfo(), and UP_Article().

UFOpaedia mails. See techMailType_t for the different array-entries.

Definition at line 197 of file cp_research.h.

Referenced by RS_InitTree(), RS_LoadXML(), RS_ParseTechnologies(), RS_SaveXML(), UP_GetUnreadMails(), UP_MailClientClick_f(), UP_OpenMail_f(), UP_SetAllMailsRead_f(), UP_SetMailButtons_f(), and UP_SetMailHeader().

Mark as researched at parsing state - but i only know the date if we already started a campaign.

Definition at line 190 of file cp_research.h.

Referenced by CL_ParseResearchedCampaignItems(), and RS_InitTree().

Used to store which "mail" entry to display in pedia. if It's equal to TECHMAIL_MAX both mailtypes are available.

Definition at line 198 of file cp_research.h.

Referenced by RS_ParseTechnologies(), and UP_SetMailHeader().

Descriptions of item before it's researched.

Definition at line 146 of file cp_research.h.

Referenced by RS_MarkOneResearchable(), RS_ParseTechnologies(), RS_ResearchFinish(), RS_ShowPedia_f(), UP_Article(), and UP_TechGetsDisplayed().

Date for UFOpaedia. Research proposal.

Definition at line 187 of file cp_research.h.

Referenced by RS_LoadXML(), RS_MarkCollected(), RS_MarkOneResearchable(), RS_ResearchFinish(), RS_SaveXML(), UP_OpenMail_f(), and UP_SetMailHeader().

How many days the production of this items runs.

Definition at line 180 of file cp_research.h.

Referenced by PR_CalculateProductionPercentDone(), PR_ItemIsProduceable(), PR_ProductionListClick_f(), PR_QueueNew(), PR_UpdateProductionList(), and RS_ScriptSanityCheck().

Set this to the entry that is supposed to get displayed instead of this one. Mostly used for e.g ammo that doesn't need its own description but rather the one for the weapon.

Definition at line 149 of file cp_research.h.

Referenced by RS_RequiredLinksAssign(), UP_FindEntry_f(), and UP_TechGetsDisplayed().

A list of requirements that ALL need to be met (= AND-related) See struct above.

Definition at line 152 of file cp_research.h.

Referenced by RS_InitTree(), RS_MarkResearchable(), RS_ParseTechnologies(), RS_RequiredLinksAssign(), RS_ResearchRun(), RS_ResearchStart_f(), UP_DisplayTechTree(), and UP_TechTreeClick_f().

A list of items that are needed (and used up) on production of _this_ item. Only "item"-type is allowed. All requirements need to be fulfilled in order for _one_ item to be produced. This check is done for each item.

Definition at line 182 of file cp_research.h.

Referenced by PR_DecreaseProduction(), PR_IncreaseProduction(), PR_ProductionIncrease_f(), PR_QueueDelete(), PR_QueueNew(), RS_ParseTechnologies(), and RS_RequiredLinksAssign().

A list of requirements where ANY need to be met (= OR-related) See struct above.

Definition at line 153 of file cp_research.h.

Referenced by RS_InitTree(), RS_MarkResearchable(), RS_ParseTechnologies(), RS_RequiredLinksAssign(), RS_ResearchRun(), and RS_ResearchStart_f().

Date for UFOpaedia. Finished research.

Definition at line 188 of file cp_research.h.

Referenced by CL_CampaignRunMarket(), RS_LoadXML(), RS_ResearchFinish(), RS_SaveXML(), UP_OpenMail_f(), and UP_SetMailHeader().

Did we loot any items of this tech? This is updated from the info stored in the requireOR and requireAND lists.

See also:
RS_CheckCollected.

Definition at line 154 of file cp_research.h.

Referenced by RS_Collected_(), RS_InitGUIData(), RS_LoadXML(), RS_MarkCollected(), RS_SaveXML(), RS_UpdateInfo(), and UR_ProcessActive().

The time that is needed to research this tech. (in days). "overallTime" stays always the same, "time" will be modified when it is under research.

Definition at line 160 of file cp_research.h.

Referenced by AC_UpdateMenu(), BaseSummary_Init(), RS_InitGUI(), RS_InitGUIData(), RS_LoadXML(), RS_MarkCollected(), RS_MarkOneResearchable(), RS_MarkResearchable(), RS_ParseTechnologies(), RS_ResearchRun(), RS_SaveXML(), and RS_UpdateInfo().

Defines what type this tech-entry is an where to search for other information "tech", "weapon" etc... see research.ufo for more

Definition at line 147 of file cp_research.h.

Referenced by RS_InitTree(), RS_ParseTechnologies(), RS_ResearchFinish(), RS_ScriptSanityCheck(), UP_Article(), and UP_TechGetsDisplayed().

UFOpaedia chapter as stored in research.ufo.

Definition at line 193 of file cp_research.h.

Referenced by RS_ParseTechnologies(), UP_Article(), and UP_TechTreeClick_f().

Next tech in pedia.

Definition at line 195 of file cp_research.h.

Referenced by RS_ParseTechnologies(), UP_GenerateArticlesSummary(), and UP_GenerateSummary().

Previous tech in pedia.

Definition at line 194 of file cp_research.h.

Referenced by RS_ParseTechnologies().


The documentation for this struct was generated from the following file:

Generated by  doxygen 1.6.2