Skip to content

Commit

Permalink
Further D&E cleanup and repair
Browse files Browse the repository at this point in the history
Addition of radio tuner crafting recipes to radio station section. repair of all links within category. addition of programmable speaker recipe to page.
  • Loading branch information
fastdelaspeed committed Feb 17, 2025
1 parent 1ac964a commit 4f7fb8e
Show file tree
Hide file tree
Showing 12 changed files with 51 additions and 52 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -90,12 +90,8 @@ public void addPages()

IIContent.itemMaterial.getStack(Materials.PROCESSOR_ELECTRONIC_ELEMENT)
))
.addSource("cryptographic_circuit_board", getSourceForItem(IIContent.itemMaterial.getStack(Materials.CRYPTOGRAPHIC_CIRCUIT_BOARD)))
.addSource("basic_radio_tuner", getSourceForItem(IIContent.itemRadioTuner.getStack(1)))
//.addSource("advanced_radio_tuner", getSourceForItem(IIContent.itemMaterial.getStack(Materials.CRYPTOGRAPHIC_CIRCUIT_BOARD)))
//.addSource("mount", getSourceForItem(IIContent.itemSkycrateMount.getStack(1)))
//.addSource("data_combiner", getSourceForItem(IIContent.blockMetalDevice.getStack(IIBlockTypes_MetalDevice.DATA_MERGER)))
;
.addSource("cryptographic_circuit_board", getSourceForItem(IIContent.itemMaterial.getStack(Materials.CRYPTOGRAPHIC_CIRCUIT_BOARD))
);
addEntry("data_types");
addEntry("data_wiring")
.addSource("data_cable", getSourceForItem(IIContent.itemDataWireCoil.getStack(1)))
Expand Down Expand Up @@ -165,11 +161,16 @@ public void addPages()

));

addEntry("radio_station");
addEntry("radio_station")
.addSource("basic_radio_tuner", getSourceForItem(IIContent.itemRadioTuner.getStack(1)))
.addSource("advanced_radio_tuner", getSourceForItem(new ItemStack(IIContent.itemRadioTuner, 1, 1)
));
addEntry("printing_press");
addEntry("scanning_conveyor");
addEntry("programmable_speaker");

addEntry("programmable_speaker")
.addSource("programmable_spkr", getSourceForItem(IIContent.blockDataConnector.getStack(IIBlockTypes_Connector.PROGRAMMABLE_SPEAKER)
));

addEntry("precision_assembler")
.addSource("assembly_scheme", getSourceForItem(IIContent.itemAssemblyScheme.getStack(1)))
.addSource("precision_tools", getSourceForItems(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ public static class IIConfig
public static Map<String, Boolean> compat = Maps.newHashMap(Maps.toMap(IICompatModule.moduleClasses.keySet(), (s) -> Boolean.TRUE));

@Comment({"The maximum frequency for basic radios."})
@Mapped (mapClass = IIConfigHandler.class, mapName = "manual_int")
public static int radioBasicMaxFrequency = 32;

@Comment({"The maximum frequency for advanced radios."})
Expand Down Expand Up @@ -1733,10 +1734,10 @@ public static void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent ev)
{
Config.manual_bool.put("petroleumHere", false);
Config.manual_bool.put("baublesHere", false);
Config.validateAndMapValues(IIConfig.class);

Config.manual_int.put("radio_station_range", RadioStation.radioRange);

Config.manual_int.put("basic_max_frequency", IIConfig.radioBasicMaxFrequency);
Config.validateAndMapValues(IIConfig.class);

if(ev.getModID().equals(ImmersiveIntelligence.MODID))
ConfigManager.sync(ImmersiveIntelligence.MODID, Type.INSTANCE);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ The **Arithmetic-Logic Machine** is an electronic device, which primary task is
|[text]{mb:"II:ArithmeticLogicMachine"}|

# details
When a data packet is received at either side of the machine, it's processed by [functional circuits](functional_circuits) mounted on one of 4 slots in the rack.
When a data packet is received at either side of the machine, it's processed by [functional circuits](_functional_circuits.md) mounted on one of 4 slots in the rack.
The machine passes the packet through all the circuits, attempting to modify its variables' values in alphabetical order using [expressions](data_types.md#expression).
Finally, the packet will be output to the side opposite the side it entered.
# details2
Expand All @@ -19,7 +19,7 @@ An [Expression] will **overwrite the variable value** with its result.
If there is no expression for a variable, it will **pass without being changed**.

# expression
Each circuit provides its own set of expressions, some, like the [Advanced Arithmetic Circuit](functional_circuits#advanced_arithmetic), which has all the expressions of an [Arithmetic Circuit](functional_circuits#arithmetic) along with some new ones.
Each circuit provides its own set of expressions, some, like the [Advanced Arithmetic Circuit](_functional_circuits.md#advanced_arithmetic), which has all the expressions of an [Arithmetic Circuit](_functional_circuits.md#arithmetic) along with some new ones.
The expression can also have a *Conditional Variable*, an [Accessor](data_types.md#accessor) of a [Boolean](data_types.md#boolean) variable, which will not execute the expression in case the value is [TRUE].

# accessor
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,58 +28,55 @@ code execution pt. 2
proudly uses polish notation ^^

# statements
**Statements** are the building blocks of a **POL** program. Each **Statement** has a distinct name its called by and performs a different action.
**Statements** are the building blocks of a **POL** program. Each **Statement** has a distinct name it's called by and performs a different action.
Examples of an action are setting a value of a variable, stopping the program, or running an internal function.
Each **Statement** takes exactly one line, but some, like the if **Statement** require another statement to work properly.
The following pages list all the **Statements**, their usage, and exemplary use cases.

# statements_use
The **USE
** statement is used to include a library of functions from a [Circuit](../functions/_functional_circuits.md) to be used by the program.
The **USE** statement is used to include a library of functions from a [Circuit](_functional_circuits.md) to be used by the program.

# statements_begin_end
The **BEGIN** and **END** statements are used to mark a fragment of a program, called a *code block*.
A *code
block* is treated as a single statement, but if consisting of more than one statements, it will have a longer execution time, equal to the sum of all the statements within it.
Multiple *code blocks* can be nested within each other, but each **BEGIN** statement must have a corresponding **END
** statement.
A *code block* is treated as a single statement, but if consisting of more than one statements, it will have a longer execution time, equal to the sum of all the statements within it.

# statements_begin_end2
Multiple *code blocks* can be nested within each other, but each **BEGIN** statement must have a corresponding **END** statement.
Although both exist as keywords, the recommended way to use them is through adding indentation to the code.

# statements_wait
The **WAIT** statement is used to pause the program for a specified amount of ticks.
During this time, the program will not execute any other statements.

# statements_sign
The **SIGN
** statement is used to switch one of the 16 colored signal lamps on a Computer Terminal to a lit or unlit state.
The states are persistent and will remain until changed by another **SIGN
** statement or power is cut off from the terminal.
The **SIGN** statement is used to switch one of the 16 colored signal lamps on a Computer Terminal to a lit or unlit state.
The states are persistent and will remain until changed by another **SIGN** statement or power is cut off from the terminal.

# statements_mark
The **MARK
** statement is used to set a label in the program that can be jumped to by the [GOTO](#statement_goto) statement.
The **MARK** statement is used to set a label in the program that can be jumped to by the [GOTO](#statements_goto) statement.
A **MARK** label cannot contain spaces or names reserved by operations, and must be unique within the program.

# statement_goto
The **GOTO** statement is used to jump to a label set by the [MARK](#statement_mark) statement.
# statements_goto
The **GOTO** statement is used to jump to a label set by the [MARK](#statements_mark) statement.
This can be useful for creating loops or conditional jumps in the program.

# statements_exec
The **EXEC
** statement is used to jump to a label set by the [MARK](#statement_mark) statement and then return to the original position in the program.
The **EXEC** statement is used to jump to a label set by the [MARK](#statements_mark) statement and then return to the original position in the program.
This can be useful for defining callable *functions* in the program.

# statements_ext
The **EXT** statement is used call another POL program from the current one.
The program will share the same memory, but will not share imported functions and [External Device] links from the one calling it.

# statements_if
The **IF** statement is used to execute a block of code if a condition is met.
If the condition is not met, the program will skip the next instruction or block of code.

# statements_else
The **ELSE
** statement is used to execute a block of code if the condition of the preceding [IF](#statement_if) statement is not met.
The **ELSE** statement is used to execute a block of code if the condition of the preceding [IF](#statements_if) statement is not met.

# statements_page
The **PAGE
** statement is used to switch the [memory page](../data_main.md#packets_basics) of the computer to a different one.
The **PAGE** statement is used to switch the [memory page](data_main.md#packets_basics) of the computer to a different one.
This can be useful for setting separate memory for different routines of the program.

# statements_wipe
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ It allows fast, reliable and relatively long-distance, lossless transmission of
# connector
|[crafting]{source:"%SECTION%"}|
The **Data Connector** serves as an endpoint of a **Data Network**. It is placed on a side of a **Data Device** to allow it sending and/or receiving **Packets**.
In a similar manner to its [Electrical Counterparts](basic_wiring), only one wire can be connected to a Data Connector. To extend the network, use a [Data Relay](#relay).
In a similar manner to its [Electrical Counterparts](wiring), only one wire can be connected to a Data Connector. To extend the network, use a [Data Relay](#relay).


# connector_colors
Expand All @@ -41,7 +41,7 @@ Using the [Engineer's Hammer](introduction#introductionHammer) on it will change
# debugger
|[crafting]{source:"%SECTION%"}|
The **Data Debugger** is a special type of [Data Relay](#relay), that captures, stores and displays the **Packet** flowing through it.
It operates in 3 [modes], that can be switched between by sneak-using a [Hammer](tools), with default one being the [Transceiver Mode].
It operates in 3 [modes], that can be switched between by sneak-using a [Hammer](introduction#introductionHammer), with default one being the [Transceiver Mode].
# debugger2
In the [Transmitter] mode, the **Debugger** will transmit a test package when provided a redstone signal.
|[data_packet]{data:{a:{Type:"string",Value:"Hello, World!"}}}|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ All types of circuit boards require a specialized blueprint to create them.
# basic_general
|[item_display]{source:"basic_general"}|
**Basic Circuits** are the common, primary, and cheap circuits.
Their universal design allows them to be easily [refitted](functions/_functional_circuits.md) to perform simple data operations,
Their universal design allows them to be easily [refitted](_functional_circuits.md) to perform simple data operations,
but their main use is construction of various **Data Devices**, such as
the [Printing Press](printing_press), the [Arithmetic Logic Machine](arithmetic_logic_machine) and the [Data Input Machine](data_input_machine.md).

Expand All @@ -45,7 +45,7 @@ Safeguarded by the Engineering Department, the **Advanced Electronic Alloy(TM)**
# advanced_electronic_alloy_craft
|[crafting]{source:"advanced_electronic_alloy"}|
The blend is made by combining Constantan, Electrum, and Platinum in a 3:2:1 mixture to yield three units.
Due to the advanced metallurgical needs, an [arc furnace](arcFurnace) is required to process the **Advanced Electronic Alloy(TM)** into other forms.
Due to the advanced metallurgical needs, an [arc furnace](arcfurnace) is required to process the **Advanced Electronic Alloy(TM)** into other forms.

# advanced_general
|[item_display]{source:"%SECTION%"}|
Expand All @@ -64,16 +64,16 @@ To make an **Advanced Board**, two **Basic Boards** are combined with a plate of

# cryptographic_board
|[item_display]{source:"cryptographic_circuit_board"}|
The **Cryptographic Circuit Board** is a specially tailored version of the [Advanced Circuit Board](#advanced_board). It is used in the creation of the [Cryptographer Circuit](functions/_functional_circuits.md).<br>
The **Cryptographic Circuit Board** is a specially tailored version of the [Advanced Circuit Board](#advanced_board). It is used in the creation of the [Cryptographer Circuit](_functional_circuits.md#cryptographer).

# processor_general
|[item_display]{source:"%SECTION%"}|
**Processor Circuits** are the most sophisticated and capable circuits.
Created from silicon, advanced electronic alloy, and various other materials in a complicated assembly process, they work as the electronic brains of [Mainframe Computers], [Drones] and many [Advanced Weapon Systems].
Created from silicon, advanced electronic alloy, and various other materials in a complicated assembly process, they work as the electronic brains of [Mainframe Computers], [Drones] and many [Advanced Weapon Systems].

# processor_components
|[item_display]{source:"processor_electronic_element"}|
Being the state-of-the-art electronic component of our times, the **Processor** is able to perform [programmed operations on data](computers/data_pol.md).
Being the state-of-the-art electronic component of our times, the **Processor** is able to perform [programmed operations on data](data_pol.md).
The manufacturing process is sophisticated and requires 32 **transistors** and two **advanced vacuum tubes** to be combined according to a scheme in a [Precision Assembler](precision_assembler.md).

# processor_board
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Functional Circuits
Not really Beep-Boop yet

# intro
The universal design of the [Circuit Boards](electronic_components) allows them to be easily [refitted] to perform various specialized operations using the [Engineer's Workbench]().
The universal design of the [Circuit Boards](electronic_components) allows them to be easily [refitted] to perform various specialized operations using the [Engineer's Workbench](workbench).
|[crafting]{source:"circuit_blueprints"}|

# arithmetic
Expand Down Expand Up @@ -89,6 +89,7 @@ The universal design of the [Circuit Boards](electronic_components) allows them
|[text]{source:"%SECTION%",bold:1b}|
*Performs operations on [Vectors](data_types.md#vector).*
|[data_circuit]{circuit:"%SECTION%"}|

# cryptographer
|[item_display]{source:"%SECTION%"}|
|[text]{source:"%SECTION%",bold:1b}|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ Programmable Speaker
Happy Engineer Noises

# intro
|[crafting]{source:"programmable_spkr"}|
The Programmable Speaker is a device, which emits a sound when provided a redstone signal. Redstone and data wire can be attached from any side. Data can be used to set the sound and its pitch, while redstone sets the volume.

# data
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ The **Radio Station** is a device for sending, receiving and relaying [Data Pack
|[text]{mb:"II:RadioStation"}|

# details
A **Radio Station** can send [Packets](data_main.md#packetsbasics) to compatible radio devices up to <config;i;radio_station_range> blocks distance.
A **Radio Station** can send [Packets](data_main.md#packetsbasics) to compatible radio devices up to [<config;i;radio_station_range>] blocks distance.
Poor weather conditions such as [rain] or [snow] will [decrease this range], so while planning construction of a radio network, an engineer should use ranges negating this effect.
|[scenario]{}|

Expand All @@ -25,4 +25,4 @@ For sufficiently advanced engineers, the **Advanced Radio Tuner** may be used to
# usage
To [change] the current frequency of the tuner, *sneak and scroll up or down*.
To [check] the frequency a device is set, *sneak-right click* it with the Tuner.<br>
Keep in mind that [some Data Devices](explosives_mines#radio_satchel0) use the limited [Basic Frequency Range], which makes them unable to be configured with frequencies above [<config;i;radioBasicMaxFrequency>].
Keep in mind that [some Data Devices](explosives_mines#radio_satchel0) use the limited [Basic Frequency Range], which makes them unable to be configured with frequencies above [<config;i;basic_max_frequency>].
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,11 @@ The **Scanning Conveyor** is a device used for precise [item detection](data_typ

# details
When an item passes through the Conveyor Scanner, its properties are read and immediately sent in the form of a Data Packet using the **ItemStack** data type.
To further process the received packet, an [ALM](arithmetic_logic_machine.md) with the [proper circuit](functional_circuits.md#itemstack) can be used.
To further process the received packet, an [ALM](arithmetic_logic_machine.md) with the [proper circuit](_functional_circuits.md#itemstack) can be used.

# uses
The **Scanning Conveyor** is most commonly used as a part of an item counter, a sorting machine, or as a trigger, activated by a specific item.
A redstone signal will turn it off, just like the regular [Conveyor](conveyor).

# scanner_variables
<br><br>
|[data_variable]{type:"itemstack", direction:"out", letter:"s", name:"Scanned item", description:"Recently scanned item (with its id, durability and NBT)"}|
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,14 @@ When supplied with materials, the machine will automatically start production.

# etching
The primary use of the [Chemical Bath] is etching [raw circuit boards](electronic_components.md) in acid.
|[recipe]{source:basic_circuit_board_etched}|
|[recipe]{source:advanced_circuit_board_etched}|
|[recipe]{source:processor_circuit_board_etched}|
|[recipe]{source:etched_basic_circuit_board}|
|[recipe]{source:etched_advanced_circuit_board}|
|[recipe]{source:etched_processor_circuit_board}|

# wood_treating
The machine can also be used for a more efficient production of [Treated Wood Planks].
|[recipe]{source:treated_wood}|


# chemical_washing
While not the main purpose, the Chemical Bath can also be used to chemically wash colored items.
|[recipe]{source:quartz_dust}|
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1758,7 +1758,7 @@ datasystem.immersiveintelligence.function.string_replace_all.param.with.desc=The
datasystem.immersiveintelligence.function.string_replace_all.result=Result
datasystem.immersiveintelligence.function.string_replace_all.result.desc=The input string with all occurrences of the substring replaced

datasystem.immersiveintelligence.function.string_lowercase=To Lowercase
datasystem.immersiveintelligence.function.string_lowercase=To lowercase
datasystem.immersiveintelligence.function.string_lowercase.desc=Converts the input string to lowercase
datasystem.immersiveintelligence.function.string_lowercase.param.text=String
datasystem.immersiveintelligence.function.string_lowercase.param.text.desc=The string to convert
Expand Down

0 comments on commit 4f7fb8e

Please sign in to comment.