Table of Contents

Class KnownTechHandler

Namespace
Nautilus.Handlers
Assembly
Nautilus.dll
A handler class for configuring custom unlocking conditions for item blueprints.
public static class KnownTechHandler
Inheritance
KnownTechHandler
Inherited Members

Methods

RemoveAllCurrentAnalysisTechEntry(TechType)

Allows you to remove all unlock entries from a TechType to be able to disable or change it to a new unlock. ***Note: This is patch time specific so the LAST mod to call this on a techtype will be the only one to control what unlocks said type after its use.***
public static void RemoveAllCurrentAnalysisTechEntry(TechType targetTechType)

Parameters

targetTechType TechType
Target TechType to remove the unlocks for.

RemoveAnalysisTechEntryFromSpecific(TechType, List<TechType>)

Allows you to remove unlock entries for a TechType from specific entries.
public static void RemoveAnalysisTechEntryFromSpecific(TechType targetTechType, List<TechType> techTypes)

Parameters

targetTechType TechType
Target TechType to remove the unlocks for.
techTypes List<TechType>
List of TechType to remove the targetTechType from.

SetAnalysisTechEntry(AnalysisTech)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in KnownTech.AnalysisTech.unlockTechTypes will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(KnownTech.AnalysisTech analysisTech)

Parameters

analysisTech KnownTech.AnalysisTech
The analysis tech entry to add.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, FMODAsset)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, FMODAsset unlockSound)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockSound FMODAsset
The sound that plays when you unlock the blueprint.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, FMODAsset, Sprite)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, FMODAsset unlockSound, Sprite unlockSprite)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockSound FMODAsset
The sound that plays when you unlock the blueprint.
unlockSprite Sprite
The sprite that shows up when you unlock the blueprint.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, FMODAsset, Sprite, List<StoryGoal>)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, FMODAsset unlockSound, Sprite unlockSprite, List<StoryGoal> storyGoals)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockSound FMODAsset
The sound that plays when you unlock the blueprint.
unlockSprite Sprite
The sprite that shows up when you unlock the blueprint.
storyGoals List<StoryGoal>
The story goals that will be triggered when you unlock the blueprint.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, string)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, string unlockMessage)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockMessage string
The message that shows up on the right when the blueprint is unlocked.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, string, FMODAsset)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, string unlockMessage, FMODAsset unlockSound)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockMessage string
The message that shows up on the right when the blueprint is unlocked.
unlockSound FMODAsset
The sound that plays when you unlock the blueprint.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, string, Sprite)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an existing AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, string unlockMessage, Sprite unlockSprite)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockMessage string
The message that shows up on the right when the blueprint is unlocked.
unlockSprite Sprite
The sprite that shows up when you unlock the blueprint.

SetAnalysisTechEntry(TechType, IEnumerable<TechType>, Sprite)

Allows you to define which TechTypes are unlocked when a certain TechType is unlocked, i.e., "analysed". If there is already an exisitng AnalysisTech entry for a TechType, all the TechTypes in "techTypesToUnlock" will be added to the existing AnalysisTech entry unlocks.
public static void SetAnalysisTechEntry(TechType techTypeToBeAnalysed, IEnumerable<TechType> techTypesToUnlock, Sprite unlockSprite)

Parameters

techTypeToBeAnalysed TechType
This TechType is the criteria for all of the "unlock TechTypes"; when this TechType is unlocked, so are all the ones in that list
techTypesToUnlock IEnumerable<TechType>
The TechTypes that will be unlocked when "techTypeToSet" is unlocked.
unlockSprite Sprite
The sprite that shows up when you unlock the blueprint.

SetCompoundUnlock(TechType, List<TechType>)

Allows you to set up a custom Compound Unlock requiring multiple techtypes to be unlocked before 1 is. ***Note: This will not remove any original unlock and if you need to do so you should use RemoveAnalysisTechEntryFromSpecific(TechType, List<TechType>) or RemoveAllCurrentAnalysisTechEntry(TechType)
public static void SetCompoundUnlock(TechType techType, List<TechType> compoundTechsForUnlock)

Parameters

techType TechType
compoundTechsForUnlock List<TechType>

UnlockOnStart(TechType)

Allows you to unlock a TechType on game start.
public static void UnlockOnStart(TechType techType)

Parameters

techType TechType