Swarm/UI/Rules/Rules.tscn
2024-04-20 01:26:11 +02:00

307 lines
17 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[gd_scene load_steps=4 format=3 uid="uid://8ffmln680deh"]
[ext_resource type="Script" path="res://UI/Rules/Rules.gd" id="1_qbtgw"]
[ext_resource type="Shader" path="res://Testbed/UIBlur.gdshader" id="2_ux84o"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_h3smw"]
shader = ExtResource("2_ux84o")
shader_parameter/lod = 1.0
[node name="Rules" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
size_flags_horizontal = 4
size_flags_vertical = 4
script = ExtResource("1_qbtgw")
[node name="PanelContainer" type="PanelContainer" parent="."]
self_modulate = Color(1, 1, 1, 0.392157)
material = SubResource("ShaderMaterial_h3smw")
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="Pivot" type="Control" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="MarginContainer" type="MarginContainer" parent="Pivot"]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 50
theme_override_constants/margin_top = 50
theme_override_constants/margin_right = 50
theme_override_constants/margin_bottom = 50
[node name="PanelContainer" type="PanelContainer" parent="Pivot/MarginContainer"]
layout_mode = 2
[node name="MarginContainer" type="MarginContainer" parent="Pivot/MarginContainer/PanelContainer"]
layout_mode = 2
theme_override_constants/margin_left = 15
theme_override_constants/margin_top = 15
theme_override_constants/margin_right = 15
theme_override_constants/margin_bottom = 15
[node name="VBoxContainer" type="VBoxContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer"]
layout_mode = 2
[node name="HBoxContainer" type="HBoxContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
layout_mode = 2
size_flags_vertical = 3
theme_override_constants/separation = 15
[node name="VBoxContainer" type="VBoxContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
custom_minimum_size = Vector2(100, 0)
layout_mode = 2
[node name="General" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "General"
[node name="Placing" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Placing"
[node name="Moving" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Moving"
[node name="HSeparator" type="HSeparator" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
[node name="Bee" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Bee"
[node name="Beetle" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Beetle"
[node name="Grasshopper" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Grasshopper"
[node name="Spider" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Spider"
[node name="Ant" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Ant"
[node name="Ladybug" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Ladybug"
[node name="Mosquito" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Mosquito"
[node name="Pillbug" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer"]
layout_mode = 2
text = "Pillbug"
[node name="VBoxContainer2" type="VBoxContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer"]
layout_mode = 2
size_flags_horizontal = 3
[node name="CategoryLabel" type="Label" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2"]
layout_mode = 2
text = "General"
[node name="ScrollContainer" type="ScrollContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="PanelContainer" type="PanelContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer"]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
[node name="MarginContainer" type="MarginContainer" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer"]
layout_mode = 2
theme_override_constants/margin_left = 10
theme_override_constants/margin_top = 10
theme_override_constants/margin_right = 10
theme_override_constants/margin_bottom = 10
[node name="GeneralLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
layout_mode = 2
bbcode_enabled = true
text = "[b]Objective[/b]: Surround your opponent's Queen Bee with your own insects or a combination of yours and theirs, while preventing them from doing the same to your Queen Bee.
[b]Components[/b]: The game pieces themselves create the board as you play. These pieces represent different insects with unique movement abilities.
[b]Gameplay[/b]:
[ul]
Players take turns placing a new insect from their hand onto the growing hive, or moving an insect already on the hive.
The key rule is the One Hive Rule: All your insects must remain connected as a single group at all times. No detaching pieces or splitting the hive in two!
The first player to surround their opponent's Queen Bee wins!
[/ul]
[b]On Your Turn[/b]: You can choose to perform one of two actions:
[ul]
Place a new insect: Select an insect from your supply and place it onto the existing hive structure.
Move an existing insect: If your Queen Bee has already been placed, you can choose to move one of your placed insects according to its movement rules (explained elsewhere in the rulebook).
[/ul]
There are additional rules specific to how each insect type moves."
fit_content = true
[node name="PlacingLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "[b]Placement Restrictions[/b]: When placing a new insect, it must follow these two key rules:
[ul]
Adjacent Placement: The new insect must be placed such that it touches at least one of your other insects along a complete side (not just a corner).
No Enemy Contact: The new insect cannot be placed touching any of your opponent's insects.
[/ul]
"
fit_content = true
[node name="MovingLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "Hive insects navigate the ever-growing hive structure, but they can't squeeze through impossibly tight spaces! This is where the Freedom of Movement Rule comes in.
[b]The Rule[/b]: A piece can only move to a space where it could physically slide in or out of using its normal movement. Imagine each insect scooting across the table if it gets stuck halfway through the gap, it can't move there.
There are two main situations where the Freedom of Movement Rule applies:
[ul]
[b]Moving into a New Space[/b]: When moving an insect, the gap between its starting position and the destination space must be large enough for the insect to fit through. For example, a Soldier Ant can move into a space between two other insects because there's a full side open. However, an Ant cannot move into a narrow gap between the corner of two insects.
[b]Moving Out of an Enclosed Space[/b]: Sometimes, your insects might get \"boxed in\" by other pieces. The Freedom of Movement Rule applies here too. An insect can only move out of a space if there's a gap large enough for it to completely exit.
[/ul]
Tip: This rule can be used strategically! By cleverly positioning your insects, you can limit your opponent's movement options and potentially trap their Queen Bee. However, be mindful the Freedom of Movement Rule applies to your insects as well, so don't accidentally box yourself in!"
fit_content = true
[node name="BeeLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The Bee is the most important of your pieces. It's the heart of your hive.
You need to protect your bee from getting surrounded (all 6 surrounding cells filled with other pieces) while also trying to surround your opponent's bee.
[b]Movement[/b]: The bee can move one (1) space in any direction.
[b]Ability[/b]: None "
fit_content = true
[node name="BeetleLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The Beetle is similiar to the bee. It can only move 1 space in any direction.
Additionally, the beetle can climb on top of other pieces. This blocks them from moving and using their abilities (as well es being targeted by abilities).
For the purpose of placing a tile, only the top most pieces' color relevant.
[b]Movement[/b]: One (1) space in any direction
[b]Ability[/b]: Can climb on top of other pieces and can drop into narrow spaces (ignoring the freedom of move rule, but only when moving from on top of the hive to a lower place)."
fit_content = true
[node name="GrasshopperLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The Grasshopper can bridge large gaps as long as there are pieces in between.
[b]Movement[/b]: Can jump in any of the six (6) directions, as long as there is at least one neighbour in that direction. The grasshopper can only jump until the first hole in a straight line.
[b]Ability[/b]: None"
fit_content = true
[node name="SpiderLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The Spider can move exactly three (3) cells.
[b]Movement[/b]: Move 3 cells (without breaking the hive). Can not move onto previously visited cells during that move.
[b]Ability[/b]: None"
fit_content = true
[node name="AntLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The Ant is very strong and a flexible piece. It scoots around the hive until it finds a nice resting spot.
[b]Movement[/b]: Move any amount of cells (around the hive). Can not move into narrow gaps (freedom of movement rule).
[b]Ability[/b]: None"
fit_content = true
[node name="LadybugLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The Ladybug is similiar to the beetle and the spider. It moves exactly three (3) spaces. The first two on top of the hive, and the final third one on ground level. Can drop into narrow spaces.
[b]Movement[/b]: Move 3 spaces. Can not move onto previously visited cells during that move. The first two cells have to be on top of the hive, the final one on ground level.
[b]Ability[/b]: None"
fit_content = true
[node name="MosquitoLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The adaptive Mosquito. It can copy any movement (or ability) of any neighbouring piece.
If the mosquito ends up on top of the hive (by copying a beetles' movement) it keeps the beetles' movement until it is back on the ground.
[b]Movement[/b]: None (or: Beetles' Movement when on top of the hive)
[b]Ability[/b]: Can copy any movement or ability of a surrounding piece."
fit_content = true
[node name="PillbugLabel" type="RichTextLabel" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer"]
visible = false
layout_mode = 2
bbcode_enabled = true
text = "The sleek Pillbug. It moves like the bee (one piece in any direction) but also has a special ability.
It can grab any one surrounding piece, then lift it over its head and drop it onto a free surrounding space.
[b]Movement[/b]: One (1) space in any direction.
[b]Ability[/b]: Can move surrounding pieces."
fit_content = true
[node name="CloseButton" type="Button" parent="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer"]
layout_mode = 2
text = "Close"
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/General" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/GeneralLabel"), "General"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Placing" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/PlacingLabel"), "Placing"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Moving" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/MovingLabel")]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Bee" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/BeeLabel"), "Bee"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Beetle" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/BeetleLabel"), "Beetle"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Grasshopper" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/GrasshopperLabel"), "Grasshopper"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Spider" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/SpiderLabel"), "Spider"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Ant" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/AntLabel"), "Ant"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Ladybug" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/LadybugLabel"), "Ladybug"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Mosquito" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/MosquitoLabel"), "Mosquito"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/HBoxContainer/VBoxContainer/Pillbug" to="." method="_on_button_pressed" binds= [NodePath("../../VBoxContainer2/ScrollContainer/PanelContainer/MarginContainer/PillbugLabel"), "Pillbug"]]
[connection signal="pressed" from="Pivot/MarginContainer/PanelContainer/MarginContainer/VBoxContainer/CloseButton" to="." method="_on_close_button_pressed"]