Skip to content

Commit 4d8bf2c

Browse files
committed
Extend tutorials
1 parent 70d7c70 commit 4d8bf2c

File tree

5 files changed

+53
-33
lines changed

5 files changed

+53
-33
lines changed

tutorials/cyber-kingdom/firewall/firewall_2.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
### @explicitHints 1
22
### @flyoutOnly true
33

4-
# First filters
4+
# Worm
55

66
```ghost
77
cyber.setupFirewall(function () {
@@ -13,7 +13,7 @@ cyber.setupFirewall(function () {
1313
1414
```
1515

16-
## Virus @showdialog
16+
## Worm @showdialog
1717
It's a Worm!
1818
We need to create a rule to stop it coming in the castle!
1919
![Worm](https://raw.githubusercontent.com/CausewayDigital/Minecraft-EE-MakeCode/main/tutorials/cyber-kingdom/firewall/images/level_2.jpg)
@@ -24,7 +24,8 @@ We need to come up with a rule to block access to the worm, but still allow vill
2424
Add a ``||cyber:Add deny firewall rule||`` block to your rules. It allows you to tell the guards to deny access to anyone that satisfies the rule.
2525

2626
### Distinguishing Features
27-
Can you see anything that might help us distinguish between a villager and a virus?
27+
Can you see anything that might help us distinguish between a villager and a virus?
28+
Press the < (back) button to check the lookout view for what is coming if you aren't sure.
2829
```template
2930
cyber.setupFirewall(function () {
3031
cyber.allowAll()

tutorials/cyber-kingdom/firewall/firewall_3.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,8 @@ cyber.addDenyFirewallRule(cyber.requireLegs(Legs.OverFourLegs))
3131
```
3232

3333
### ~ tutorialhint
34-
```blocks
35-
cyber.setupFirewall(function () {
36-
cyber.allowAll()
37-
cyber.addDenyFirewallRule(cyber.requireLegs(Legs.OverFourLegs))
38-
cyber.addDenyFirewallRule(cyber.requireHat(WearingHat.NoHat))
39-
})
34+
Are those villagers wearing hats?
4035

41-
```
4236

4337
```package
4438
causeway-digital-makecode-extension=github:causewaydigital/pxt-causeway-digital-extension#cyber-kingdom

tutorials/cyber-kingdom/firewall/firewall_4.md

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ Are they all going to be allowed through the firewall?
2121

2222
## More villagers
2323
You may need to make rules using an **and** statement. This means you can combine 2 rules together.
24+
Watch out, some of these villages don't have hats, but they are carrying items like a pickaxe or map.
2425

2526

2627
```template
@@ -32,14 +33,7 @@ cyber.addDenyFirewallRule(cyber.requireHat(WearingHat.NoHat))
3233
```
3334

3435
### ~ tutorialhint
35-
```blocks
36-
cyber.setupFirewall(function () {
37-
cyber.allowAll()
38-
cyber.addDenyFirewallRule(cyber.requireLegs(Legs.OverFourLegs))
39-
cyber.addDenyFirewallRule(cyber.requireHat(WearingHat.NoHat))
40-
})
41-
42-
```
36+
The virus has 2 legs and doesn't seem to be holding anything.
4337

4438
```package
4539
causeway-digital-makecode-extension=github:causewaydigital/pxt-causeway-digital-extension#cyber-kingdom

tutorials/cyber-kingdom/firewall/firewall_5.md

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
### @explicitHints 1
22
### @flyoutOnly true
33

4-
# TUTORIAL 5
4+
# Spies
55

66
```ghost
77
cyber.setupFirewall(function () {
@@ -14,32 +14,25 @@ cyber.setupFirewall(function () {
1414
1515
```
1616

17-
## More villagers @showdialog
18-
It looks like there's a large group of villagers on their way.
19-
Are they all going to be allowed through the firewall?
17+
## Spies @showdialog
18+
Be careful, the rival kingdom has been known to try and send spies through our gates.
2019

2120

22-
## More villagers
23-
You may need to make rules using an **and** statement. This means you can combine 2 rules together.
21+
## Spies!
22+
Make sure not to let the spies in, they try to use a disguise so they won't be recognised.
23+
I wonder how we could differentiate them from normal villagers?
2424

2525

2626
```template
2727
cyber.setupFirewall(function () {
2828
cyber.allowAll()
2929
cyber.addDenyFirewallRule(cyber.requireLegs(Legs.OverFourLegs))
30-
cyber.addDenyFirewallRule(cyber.requireHat(WearingHat.NoHat))
30+
cyber.addDenyFirewallRule(cyber.ruleAnd(cyber.requireHat(WearingHat.NoHat), cyber.requireHoldingItem(HoldingItem.NoItem)))
3131
})
3232
```
3333

3434
### ~ tutorialhint
35-
```blocks
36-
cyber.setupFirewall(function () {
37-
cyber.allowAll()
38-
cyber.addDenyFirewallRule(cyber.requireLegs(Legs.OverFourLegs))
39-
cyber.addDenyFirewallRule(cyber.requireHat(WearingHat.NoHat))
40-
})
41-
42-
```
35+
What do spies always wear when they want to conceal their identity?
4336

4437
```package
4538
causeway-digital-makecode-extension=github:causewaydigital/pxt-causeway-digital-extension#cyber-kingdom
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
### @explicitHints 1
2+
### @flyoutOnly true
3+
4+
# Soldiers
5+
6+
```ghost
7+
cyber.setupFirewall(function () {
8+
cyber.allowAll()
9+
cyber.addDenyFirewallRule(cyber.requireHat(WearingHat.NoHat))
10+
cyber.addDenyFirewallRule(cyber.requireHoldingItem(HoldingItem.NoItem))
11+
cyber.addDenyFirewallRule(cyber.requireLegs(Legs.TwoLegs))
12+
cyber.addDenyFirewallRule(cyber.ruleAnd(cyber.requireLegs(Legs.OverFourLegs), cyber.requireHoldingItem(HoldingItem.NoItem)))
13+
})
14+
15+
```
16+
17+
## Soldiers @showdialog
18+
The rival kingdom it seems didn't take kindly to us blocking access to their spies and have sent soldiers!
19+
20+
21+
## Spies!
22+
Quickly, create some rules to block these solders, we can't have them getting through the castle walls!
23+
I wonder how we could differentiate them from normal villagers?
24+
25+
26+
```template
27+
cyber.setupFirewall(function () {
28+
cyber.allowAll()
29+
cyber.addDenyFirewallRule(cyber.requireLegs(Legs.OverFourLegs))
30+
cyber.addDenyFirewallRule(cyber.ruleAnd(cyber.requireHat(WearingHat.NoHat), cyber.requireHoldingItem(HoldingItem.NoItem)))
31+
cyber.addDenyFirewallRule(cyber.requireEyewear(WearingEyeware.WearingEyeware))
32+
})
33+
```
34+
35+
36+
```package
37+
causeway-digital-makecode-extension=github:causewaydigital/pxt-causeway-digital-extension#cyber-kingdom
38+
```

0 commit comments

Comments
 (0)