|
|
@@ -0,0 +1,63 @@
|
|
|
+//Core solution - simplified
|
|
|
+//Scene - Initialize When Scene Starts
|
|
|
+//Open doors need to be set to invisible
|
|
|
+openDoor1.visible(false);
|
|
|
+openDoor2.visible(false);
|
|
|
+openDoor3.visible(false);
|
|
|
+openDoor4.visible(false);
|
|
|
+
|
|
|
+//Door should open when clicked
|
|
|
+//We should talk the logic out with the ninja before we code
|
|
|
+//pseudo code is a great idea
|
|
|
+
|
|
|
+//open doors don't have underscores but closed doors have it
|
|
|
+
|
|
|
+//door_1 - Mouse Click Event
|
|
|
+//Check if it's closed, if it is, the sprite is visible
|
|
|
+if ($this.visible()) {
|
|
|
+ $this.visible(false); //we'll hide it when it's clicked
|
|
|
+ openDoor1.visible(true); //show the openDoor sprite
|
|
|
+ //card image generation - should be consistent with how
|
|
|
+ //Rolling Dice is taught even though it is possible to do
|
|
|
+ //this in one line, Math.round() isn't needed
|
|
|
+ var randomImage = random(1,8); //pick a number between 1 and 8
|
|
|
+ card_1.frameIndex(randomImage); //update the card with the image
|
|
|
+} else { //don't need else
|
|
|
+ // Otherwise the door is somehow already open
|
|
|
+ // it would be showing the card so we can't click it.
|
|
|
+}
|
|
|
+
|
|
|
+//openDoor1 - Mous Click Event
|
|
|
+//Check if it's open, if it is, this sprite is visible
|
|
|
+if($this.visible()) {
|
|
|
+ $this.visible(false); //hide openDoor when clicked
|
|
|
+ door_1.visible(true); //show the door_1 sprite
|
|
|
+} else { //don't need else
|
|
|
+ //Otherwise, the openDoor is alredy hidden,
|
|
|
+ //so we wouldn't be able to click it anyways.
|
|
|
+}
|
|
|
+
|
|
|
+//Above should be the base code, after that we can tackle the objective
|
|
|
+//to only allow one door open at a time
|
|
|
+
|
|
|
+//CN Sensei Guide Solution
|
|
|
+
|
|
|
+// door_x - Mouse Click Events
|
|
|
+if ($this.visible()) {
|
|
|
+ //reset all the doors
|
|
|
+ openDoor1.visible(false);
|
|
|
+ openDoor2.visible(false);
|
|
|
+ openDoor3.visible(false);
|
|
|
+ openDoor4.visible(false);
|
|
|
+ door_1.visible(true);
|
|
|
+ door_2.visible(true);
|
|
|
+ door_3.visible(true);
|
|
|
+ door_4.visible(true);
|
|
|
+ $this.visible(false); //this is the code from base code above
|
|
|
+ //New part of this solution is the reset code
|
|
|
+ //this part is unique for each door
|
|
|
+ //openDoor1 and card_1 are changed to their corresponding
|
|
|
+ //door number, so openDoor3 and card_3 are on door_3
|
|
|
+ openDoor1.visible(true);
|
|
|
+ card_1.frameIndex(random(1, 8));
|
|
|
+}
|