Fix tint control logic (#23821)

* Fix: Upgrade tint control logic

* Follow formatting

* Remove redundant 'as'

* Revert "Remove redundant 'as'"

This reverts commit 12bceb4053.

* Auto-docs, refactoring
This commit is contained in:
Mikhail Dzianishchyts
2024-02-04 21:18:43 +00:00
committed by GitHub
parent 3ab2a08d86
commit 19730f6e81
3 changed files with 57 additions and 32 deletions
+22 -15
View File
@@ -2,14 +2,14 @@
//Defines for construction states
//girder construction states
/// girder construction states
#define GIRDER_NORMAL 0
#define GIRDER_REINF_STRUTS 1
#define GIRDER_REINF 2
#define GIRDER_DISPLACED 3
#define GIRDER_DISASSEMBLED 4
//rwall construction states
/// rwall construction states
#define RWALL_INTACT 0
#define RWALL_SUPPORT_LINES 1
#define RWALL_COVER 2
@@ -18,31 +18,31 @@
#define RWALL_SUPPORT_RODS 5
#define RWALL_SHEATH 6
//window construction states
/// window construction states
#define WINDOW_OUT_OF_FRAME 0
#define WINDOW_IN_FRAME 1
#define WINDOW_SCREWED_TO_FRAME 2
//airlock assembly construction states
/// airlock assembly construction states
#define AIRLOCK_ASSEMBLY_NEEDS_WIRES 0
#define AIRLOCK_ASSEMBLY_NEEDS_ELECTRONICS 1
#define AIRLOCK_ASSEMBLY_NEEDS_SCREWDRIVER 2
//used by airlocks and airlock wires.
/// used by airlocks and airlock wires.
#define AICONTROLDISABLED_OFF 0 // Silicons can control the airlock normally.
#define AICONTROLDISABLED_ON 1 // Silicons cannot control the airlock, but can hack the airlock.
#define AICONTROLDISABLED_BYPASS 2 // Silicons can control the airlock because they succeeded on the hack
#define AICONTROLDISABLED_PERMA 3 // Wire cutting an airlock on AICONTROLDISABLED_BYPASS toggles it between AICONTROLDISABLED_BYPASS and this.
//plastic flaps construction states
/// plastic flaps construction states
#define PLASTIC_FLAPS_NORMAL 0
#define PLASTIC_FLAPS_DETACHED 1
//Mounted Frames BITMASK
/// Mounted Frames BITMASK
#define MOUNTED_FRAME_SIMFLOOR (1 << 0)
#define MOUNTED_FRAME_NOSPACE (1 << 1)
//ai core defines
/// ai core defines
#define EMPTY_CORE 0
#define CIRCUIT_CORE 1
#define SCREWED_CORE 2
@@ -50,15 +50,21 @@
#define GLASS_CORE 4
#define AI_READY_CORE 5
//other construction-related things
/// other construction-related things
//windows affected by nar'sie turn this color.
/// windows affected by nar'sie turn this color.
#define NARSIE_WINDOW_COLOUR "#7D1919"
//let's just pretend fulltile windows being children of border windows is fine
/// let's just pretend fulltile windows being children of border windows is fine
#define FULLTILE_WINDOW_DIR NORTHEAST
//Material defines, for determining how much of a given material an item contains
/// Range of a tint control button, that works only in its area.
#define TINT_CONTROL_RANGE_AREA 0
/// ID of a tint control button with no group specified, so it controls only windows also with no group specified ('null-like' id).
#define TINT_CONTROL_GROUP_NONE 0
/// Material defines, for determining how much of a given material an item contains
#define MAT_METAL "metal"
#define MAT_GLASS "glass"
#define MAT_SILVER "silver"
@@ -72,9 +78,10 @@
#define MAT_TITANIUM "titanium"
#define MAT_BIOMASS "biomass"
#define MAT_PLASTIC "plastic"
//The amount of materials you get from a sheet of mineral like iron/diamond/glass etc
/// The amount of materials you get from a sheet of mineral like iron/diamond/glass etc
#define MINERAL_MATERIAL_AMOUNT 2000
//The maximum size of a stack object.
/// The maximum size of a stack object.
#define MAX_STACK_SIZE 50
//maximum amount of cable in a coil
/// maximum amount of cable in a coil
#define MAXCOIL 30