Shiptest 13 - Modules - TypesVar Details - Proc Details

scan_consolenew

Vars

can_use_scannerUsed for setting tgui data - Whether the connected DNA Scanner is usable
connected_scannerCurrently connected DNA Scanner
delayed_actionCurrent delayed action, used for delayed enzyme transfer on scanner door close
disketteCurrently stored genetic data diskette
genetic_makeup_bufferMaximum number of enzymes we can store
injector_selectionAssoc list of all advanced injectors. Keys are injector names. Values are lists of mutations.
injectorreadyWorld time when injectors are ready to be printed
is_injector_readyUsed for setting tgui data - Whether injectors are ready to be printed
is_joker_readyUsed for setting tgui data - Whether JOKER algorithm is ready
is_pulsing_radsUsed for setting tgui data - Wheher an enzyme pulse operation is ongoing
is_scramble_readyUsed for setting tgui data - Whether Scramble DNA is ready
is_viable_occupantUsed for setting tgui data - Whether the current DNA Scanner occupant is viable for genetic modification
jokerreadyWorld time when JOKER algorithm can be used in DNA Consoles
max_chromosomesMaximum number of chromosomes that DNA Consoles are able to store.
max_injector_instabilityMaximum total instability of all combined mutations allowed on an advanced injector
max_injector_mutationsMaximum number of mutation that an advanced injector can store
max_injector_selectionsMaximum number of advanced injectors that DNA Consoles store
max_storageMaximum number of mutations that DNA Consoles are able to store
rad_pulse_indexIndex of the enzyme being modified during delayed enzyme pulse operations
rad_pulse_timerWorld time when the enzyme pulse should complete
raddurationDuration for enzyme radiation pulses
radstrengthStrength for enzyme radiation pulses
scanner_occupantCurrent DNA Scanner occupant
scramblereadyWorld time when Scramble can be used in DNA Consoles
stored_chromosomesList of all chromosomes stored in the DNA Console
stored_mutationsList of all mutations stored on the DNA Console
stored_researchLink to the techweb's stored research. Used to retrieve stored mutations
tgui_advinjector_mutationsUsed for setting tgui data - List of occupant mutations
tgui_console_chromosomesUsed for setting tgui data - List of DNA Console chromosomes
tgui_console_mutationsUsed for setting tgui data - List of DNA Console stored mutations
tgui_diskette_mutationsUsed for setting tgui data - List of diskette stored mutations
tgui_genetic_makeupUsed for setting tgui data - List of occupant mutations
tgui_occupant_mutationsUsed for setting tgui data - List of occupant mutations
tgui_view_stateState of tgui view, i.e. which tab is currently active, or which genome we're currently looking at.
time_to_injectorUsed for setting tgui data - Time until injectors are ready
time_to_jokerUsed for setting tgui data - Time until joker is ready
time_to_pulseUsed for setting tgui data - Time until the enzyme pulse is complete
time_to_scrambleUsed for setting tgui data - Time until scramble is ready

Procs

apply_genetic_makeupApplies the enzyme buffer to the current scanner occupant
build_chrom_listTakes any given chromosome and calculates chromosome compatibility
build_genetic_makeup_listBuilds the genetic makeup list which will be sent to tgui interface.
build_mutation_listBuilds the genetic makeup list which will be sent to tgui interface.
can_modify_occupantChecks if there is a valid DNA Scanner occupant for genetic modification
check_discoveryChecks whether a mutation alias has been discovered
connect_to_scannerChecks for adjacent DNA scanners and connects when it finds a viable one
get_mut_by_refFind a mutation from various storage locations via ATOM ref
on_scanner_closeCalled by connected DNA Scanners when their doors close.
on_scanner_openCalled by connected DNA Scanners when their doors open.
rad_pulsePerforms the enzyme radiation pulse.
randomize_radiation_accuracyCreates a randomised accuracy value for the enzyme pulse functionality.
scanner_operationalChecks if there is a connected DNA Scanner that is operational
scrambleScrambles an enzyme element value for the enzyme pulse functionality.
set_default_stateSets the default state for the tgui interface.

Var Details

can_use_scanner

Used for setting tgui data - Whether the connected DNA Scanner is usable

connected_scanner

Currently connected DNA Scanner

delayed_action

Current delayed action, used for delayed enzyme transfer on scanner door close

diskette

Currently stored genetic data diskette

genetic_makeup_buffer

Maximum number of enzymes we can store

injector_selection

Assoc list of all advanced injectors. Keys are injector names. Values are lists of mutations.

injectorready

World time when injectors are ready to be printed

is_injector_ready

Used for setting tgui data - Whether injectors are ready to be printed

is_joker_ready

Used for setting tgui data - Whether JOKER algorithm is ready

is_pulsing_rads

Used for setting tgui data - Wheher an enzyme pulse operation is ongoing

is_scramble_ready

Used for setting tgui data - Whether Scramble DNA is ready

is_viable_occupant

Used for setting tgui data - Whether the current DNA Scanner occupant is viable for genetic modification

jokerready

World time when JOKER algorithm can be used in DNA Consoles

max_chromosomes

Maximum number of chromosomes that DNA Consoles are able to store.

max_injector_instability

Maximum total instability of all combined mutations allowed on an advanced injector

max_injector_mutations

Maximum number of mutation that an advanced injector can store

max_injector_selections

Maximum number of advanced injectors that DNA Consoles store

max_storage

Maximum number of mutations that DNA Consoles are able to store

rad_pulse_index

Index of the enzyme being modified during delayed enzyme pulse operations

rad_pulse_timer

World time when the enzyme pulse should complete

radduration

Duration for enzyme radiation pulses

radstrength

Strength for enzyme radiation pulses

scanner_occupant

Current DNA Scanner occupant

scrambleready

World time when Scramble can be used in DNA Consoles

stored_chromosomes

List of all chromosomes stored in the DNA Console

stored_mutations

List of all mutations stored on the DNA Console

stored_research

Link to the techweb's stored research. Used to retrieve stored mutations

tgui_advinjector_mutations

Used for setting tgui data - List of occupant mutations

tgui_console_chromosomes

Used for setting tgui data - List of DNA Console chromosomes

tgui_console_mutations

Used for setting tgui data - List of DNA Console stored mutations

tgui_diskette_mutations

Used for setting tgui data - List of diskette stored mutations

tgui_genetic_makeup

Used for setting tgui data - List of occupant mutations

tgui_occupant_mutations

Used for setting tgui data - List of occupant mutations

tgui_view_state

State of tgui view, i.e. which tab is currently active, or which genome we're currently looking at.

time_to_injector

Used for setting tgui data - Time until injectors are ready

time_to_joker

Used for setting tgui data - Time until joker is ready

time_to_pulse

Used for setting tgui data - Time until the enzyme pulse is complete

time_to_scramble

Used for setting tgui data - Time until scramble is ready

Proc Details

apply_genetic_makeup

Applies the enzyme buffer to the current scanner occupant

Applies the type of a specific genetic makeup buffer to the current scanner occupant

Arguments:

build_chrom_list

Takes any given chromosome and calculates chromosome compatibility

Will iterate over the stored chromosomes in the DNA Console and will check whether it can be applied to the supplied mutation. Then returns a list of names of chromosomes that were compatible.

Arguments:

build_genetic_makeup_list

Builds the genetic makeup list which will be sent to tgui interface.

build_mutation_list

Builds the genetic makeup list which will be sent to tgui interface.

Will iterate over the connected scanner occupant, DNA Console, inserted diskette and chromosomes and any advanced injectors, building the main data structures which get passed to the tgui interface.

can_modify_occupant

Checks if there is a valid DNA Scanner occupant for genetic modification

Checks if there is a valid subject in the DNA Scanner that can be genetically modified. Will set the scanner occupant var as part of this check. Requires that the scanner can be operated and will return early if it can't

check_discovery

Checks whether a mutation alias has been discovered

Checks whether a given mutation's genetic sequence has been completed and discovers it if appropriate

Arguments:

connect_to_scanner

Checks for adjacent DNA scanners and connects when it finds a viable one

Seearches cardinal directions in order. Stops when it finds a viable DNA Scanner. Will connect to a broken scanner if no functional scanner is available. Links itself to the DNA Scanner to receive door open and close events.

get_mut_by_ref

Find a mutation from various storage locations via ATOM ref

Takes an ATOM Ref and searches the appropriate mutation buffers and storage vars to try and find the associated mutation.

Arguments:

on_scanner_close

Called by connected DNA Scanners when their doors close.

Sets the new scanner occupant and completes delayed enzyme transfer if one is queued.

on_scanner_open

Called by connected DNA Scanners when their doors open.

Clears enzyme pulse operations, stops processing and nulls the current scanner occupant var.

rad_pulse

Performs the enzyme radiation pulse.

Donor code from previous DNA Console iteration. Called from process() when there is a radiation pulse in progress. Ends processing.

randomize_radiation_accuracy

Creates a randomised accuracy value for the enzyme pulse functionality.

Donor code from previous DNA Console iteration.

Arguments:

scanner_operational

Checks if there is a connected DNA Scanner that is operational

scramble

Scrambles an enzyme element value for the enzyme pulse functionality.

Donor code from previous DNA Console iteration.

Arguments:

set_default_state

Sets the default state for the tgui interface.