research 
Master Types
Includes all the helper procs and basic tech processing.
Vars | |
| known_designs | List of available designs |
|---|---|
| known_tech | List of locally known tech. |
| possible_designs | List of all designs |
| possible_tech | List of all tech in the game that players have access to (barring special events). |
Procs | |
| AddTech2Known | Adds a tech to known_tech list. Checks to make sure there aren't duplicates and updates existing tech's levels if needed. Input: datum/tech; Output: Null |
| DesignHasReqs | Checks to see if design has all the required pre-reqs. Input: datum/design; Output: 0/1 (false/true) |
| IsTechHigher | Checks if the origin level can raise current tech levels Input: Tech's ID and Level; Output: TRUE for yes, FALSE for no |
| RefreshResearch | Refreshes known_tech and known_designs list. Input/Output: n/a |
| TechHasReqs | Checks to see if tech has all the required pre-reqs. Input: datum/tech; Output: 0/1 (false/true) |
| UpdateTech | Refreshes the levels of a given tech. Input: Tech's ID and Level; Output: new level or Null |
| push_data | A common task is for one research datum to copy over its techs and designs
and update them on another research datum.
Arguments:
other - The research datum to send designs and techs to |
Var Details
known_designs 
List of available designs
known_tech 
List of locally known tech.
possible_designs 
List of all designs
possible_tech 
List of all tech in the game that players have access to (barring special events).
Proc Details
AddTech2Known
Adds a tech to known_tech list. Checks to make sure there aren't duplicates and updates existing tech's levels if needed. Input: datum/tech; Output: Null
DesignHasReqs
Checks to see if design has all the required pre-reqs. Input: datum/design; Output: 0/1 (false/true)
IsTechHigher
Checks if the origin level can raise current tech levels Input: Tech's ID and Level; Output: TRUE for yes, FALSE for no
RefreshResearch
Refreshes known_tech and known_designs list. Input/Output: n/a
TechHasReqs
Checks to see if tech has all the required pre-reqs. Input: datum/tech; Output: 0/1 (false/true)
UpdateTech
Refreshes the levels of a given tech. Input: Tech's ID and Level; Output: new level or Null
push_data
A common task is for one research datum to copy over its techs and designs
and update them on another research datum.
Arguments:
other - The research datum to send designs and techs to