LOLGraphics 3.4 程式設計/製作簡單的 LOLGraphics 遊戲
在本教程中,我們將製作一個簡單的 WASD 控制遊戲,你將控制一個方塊。如果你掉進熔岩池,你就會輸,如果你到達紫色地毯,你將會被問到一個多項選擇題(美國第一任總統是誰)。如果你答對了,你就贏了。如果你答錯了,你就輸了。足夠簡單吧。
由於程式碼將分段編寫,本章將遵循以下約定:新行(在先前版本中不存在的)將以綠色突出顯示,應刪除的行將以紅色突出顯示,應保留的行將以藍色突出顯示。

你將從一個空程式開始。讓我們開始繪製場地。背景將像草地一樣是綠色的,將有一個紅色方塊代表熔岩池,還有一個洋紅色方塊。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 IM OUTTA UR SUBPROGRAM
請注意,延遲被設定為 1。這是可能的最低值,出於使遊戲儘可能流暢執行的目的,我們特意這樣設定。
玩家將是一個可以在螢幕上移動的橙色方塊。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DRAW_FIELD PLZ RUN SUBPROGRAM DEFALT_VARIABLES IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DEFALT_VARIABLES I HAS A TWO BYTE DAT IZ CALLED X I HAS A TWO BYTE DAT IZ CALLED Y PLZ SET TWO BYTE X 200 PLZ SET TWO BYTE Y 150 PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 IM OUTTA UR SUBPROGRAM
請注意,繪製操作是在設定預設變數的相同子程式中完成的。這將改變。
就目前而言,我們還沒有太多遊戲。讓我們實現玩家移動。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DEFALT_VARIABLES PLZ RUN SUBPROGRAM DRAW_FIELD PLZ RUN SUBPROGRAM DEFALT_VARIABLES FOREVER RUN MOVE IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DEFALT_VARIABLES I HAS A TWO BYTE DAT IZ CALLED X I HAS A TWO BYTE DAT IZ CALLED Y I HAS A TWO BYTE DAT IZ CALLED BUTTON PLZ SET TWO BYTE X 200 PLZ SET TWO BYTE Y 150 PLZ SET TWO BYTE BUTTON -1 PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED MOVE PLZ READ CHAR BUTTON SWITCH [[BUTTON]] CASE 56,87,119 UP CASE 52,65,97 LEFT CASE 50,83,115 DOWN CASE 54,68,100 RIGHT IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED UP PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DOWN PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED LEFT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED RIGHT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM
請注意,玩家繪製例程已移至場地,並且程式現在在開始繪製之前設定預設值。此外,在 switch/case 語句中,它將變數與 WASD 和 8462 鍵的 ASCII 值進行比較。
現在我們已經完成了移動,但你可以隨意走動,包括在熔岩之上。讓我們來解決這個問題。讓我們新增檢測你是否掉入熔岩並結束遊戲的程式碼。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DEFALT_VARIABLES PLZ RUN SUBPROGRAM DRAW_FIELD FOREVER RUN MOVE IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DEFALT_VARIABLES I HAS A TWO BYTE DAT IZ CALLED X I HAS A TWO BYTE DAT IZ CALLED Y I HAS A TWO BYTE DAT IZ CALLED BUTTON PLZ SET TWO BYTE X 200 PLZ SET TWO BYTE Y 150 PLZ SET TWO BYTE BUTTON -1 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED MOVE PLZ READ CHAR BUTTON SWITCH [[BUTTON]] CASE 56,87,119 UP CASE 52,65,97 LEFT CASE 50,83,115 DOWN CASE 54,68,100 RIGHT PLZ RUN SUBPROGRAM CKECK_LAVA_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED UP PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DOWN PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED LEFT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED RIGHT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED FELL_IN_LAVA PLZ PRINT TEXT YOU FELL IN LAVA IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_X SWITCH [[X]] CASE 80,90,100,110,120,130,140 CKECK_LAVA_Y IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_Y SWITCH [[Y]] CASE 80,90,100,110,120,130,140 FELL_IN_LAVA IM OUTTA UR SUBPROGRAM
現在,如果你掉進熔岩,你會收到一條資訊,告知你這一點,並且遊戲結束。請注意,由於玩家從座標 (200,150) 開始,並以 10 畫素/迭代的速度移動,因此 x 和 y 值將始終是可以被 10 整除的數字。
現在我們可以檢測玩家是否進入熔岩,讓我們也檢測玩家是否踏在地毯上。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DEFALT_VARIABLES PLZ RUN SUBPROGRAM DRAW_FIELD FOREVER RUN MOVE IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DEFALT_VARIABLES I HAS A TWO BYTE DAT IZ CALLED X I HAS A TWO BYTE DAT IZ CALLED Y I HAS A TWO BYTE DAT IZ CALLED BUTTON PLZ SET TWO BYTE X 200 PLZ SET TWO BYTE Y 150 PLZ SET TWO BYTE BUTTON -1 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED MOVE PLZ READ CHAR BUTTON SWITCH [[BUTTON]] CASE 56,87,119 UP CASE 52,65,97 LEFT CASE 50,83,115 DOWN CASE 54,68,100 RIGHT PLZ RUN SUBPROGRAM CKECK_LAVA_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED UP PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DOWN PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED LEFT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED RIGHT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED FELL_IN_LAVA PLZ PRINT TEXT YOU FELL IN LAVA IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_X SWITCH [[X]] CASE 80,90,100,110,120,130,140 CKECK_LAVA_Y PLZ RUN SUBPROGRAM CKECK_CARPET_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_Y SWITCH [[Y]] CASE 80,90,100,110,120,130,140 FELL_IN_LAVA IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED ON_CARPET PLZ PRINT TEXT YOU WIN IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_CARPET_X SWITCH [[X]] CASE 280,290,300,310,320,330,340 CKECK_CARPET_Y IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_CARPET_Y SWITCH [[Y]] CASE 180,190,200,210,220,230,240 ON_CARPET IM OUTTA UR SUBPROGRAM
現在,當你踏上地毯時,你就會立即獲勝。讓我們把它改成你需要回答一個瑣事問題,只有答對了才能獲勝。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DEFALT_VARIABLES PLZ RUN SUBPROGRAM DRAW_FIELD FOREVER RUN MOVE IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DEFALT_VARIABLES I HAS A TWO BYTE DAT IZ CALLED X I HAS A TWO BYTE DAT IZ CALLED Y I HAS A TWO BYTE DAT IZ CALLED BUTTON PLZ SET TWO BYTE X 200 PLZ SET TWO BYTE Y 150 PLZ SET TWO BYTE BUTTON -1 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED MOVE PLZ READ CHAR BUTTON SWITCH [[BUTTON]] CASE 56,87,119 UP CASE 52,65,97 LEFT CASE 50,83,115 DOWN CASE 54,68,100 RIGHT PLZ RUN SUBPROGRAM CKECK_LAVA_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED UP PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DOWN PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED LEFT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED RIGHT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED FELL_IN_LAVA PLZ PRINT TEXT YOU FELL IN LAVA PLZ PRINT TEXT PLZ PRINT TEXT YOU LOSE IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_X SWITCH [[X]] CASE 80,90,100,110,120,130,140 CKECK_LAVA_Y PLZ RUN SUBPROGRAM CKECK_CARPET_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_Y SWITCH [[Y]] CASE 80,90,100,110,120,130,140 FELL_IN_LAVA IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED ON_CARPET PLZ PRINT TEXT WHO WAS THE FIRST PLZ PRINT TEXT WHO PRESIDENT OF THE PLZ PRINT TEXT UNITED STATES? PLZ PRINT TEXT PLZ PRINT TEXT 1) RICHARD NIXON PLZ PRINT TEXT 2) GEORGE WASHINGTON PLZ PRINT TEXT 3) DONALD TRUMP PLZ PRINT TEXT 4) JOHN ADAMS I HAS A ONE BYTE DAT IZ CALLED ANSWER PLZ ASK TEH USR 2 GIMME A ONE BYTE ANSWER PLZ CLEAR TEH CONSOLE SWITCH [ANSWER] LABELCASE 2 WIN PLZ PRINT TEXT YOU LOSE! PLZ GOTO LABEL END DIS IZ MY LABEL! IT IZ KALLED WIN PLZ PRINT TEXT YOU WIN! DIS IZ MY LABEL! IT IZ KALLED END IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_CARPET_X SWITCH [[X]] CASE 280,290,300,310,320,330,340 CKECK_CARPET_Y IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_CARPET_Y SWITCH [[Y]] CASE 180,190,200,210,220,230,240 ON_CARPET IM OUTTA UR SUBPROGRAM
現在,當你踏上地毯時,你會被問到美國第一任總統是誰。此外,當你掉進熔岩時,除了 “你掉進熔岩” 之外,還會顯示 “你輸了” 的文字。這個 “遊戲” 可以被認為是完成了,但是我們還要新增一件事情。
你會期望玩家掉進熔岩後,他不會被繪製在螢幕上。然而,這並非目前遊戲中發生的事情。讓我們來解決這個問題。有多種方法可以做到這一點。
- 一種方法是將玩家的 x 和 y 值設定為越界值,然後重新繪製螢幕。這會導致玩家被 “繪製”,但由於它將位於螢幕外,所以你不會看到他。你可以隨意使用這種方法,但這並不是我們將在本書中使用的。
- 第二種方法是建立一個名為 IN_LAVA 的單位元組變數,將其設定為 0,當玩家掉進熔岩時,將其設定為 1。繪製例程將檢查該變數的值,如果等於 1,則不會繪製玩家。你可以在程式碼中隨意使用它,但這也不是我們將在本書中做的。
- 第三種方法是將 x 或 y 的值設定為一個數字,例如 -1,然後在繪製例程中檢查 x 是否等於 -1,如果是,則不會繪製玩家。你可以使用任何不能被 10 整除的數字,它不會影響程式碼的執行方式,因為玩家以 10 畫素/迭代的速度移動,並且以 x、y 座標開始,這些座標可以被 10 整除。這就是我們將要做的。
所以,以下是改進後的程式碼。
HAI 3.4 0 1 IM IN UR CODE EXECUTIN UR KOMANDZ PLZ RUN SUBPROGRAM DEFALT_VARIABLES PLZ RUN SUBPROGRAM DRAW_FIELD FOREVER RUN MOVE IM OUTTA UR CODE IM IN UR SUBPROGRAM DAT IZ KALLED DEFALT_VARIABLES I HAS A TWO BYTE DAT IZ CALLED X I HAS A TWO BYTE DAT IZ CALLED Y I HAS A TWO BYTE DAT IZ CALLED BUTTON PLZ SET TWO BYTE X 200 PLZ SET TWO BYTE Y 150 PLZ SET TWO BYTE BUTTON -1 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DRAW_FIELD PLZ CHANGE PAINT BRUSH 0 154 23 PLZ FILL RECT 0 0 630 430 PLZ CHANGE PAINT BRUSH RED PLZ FILL RECT 100 100 50 50 PLZ CHANGE PAINT BRUSH MAGENTA PLZ FILL RECT 300 200 50 50 SWITCH [[X]] LABELCASE -1 END PLZ CHANGE PAINT BRUSH ORANGE PLZ FILL RECT X Y 25 25 IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED MOVE PLZ READ CHAR BUTTON SWITCH [[BUTTON]] CASE 56,87,119 UP CASE 52,65,97 LEFT CASE 50,83,115 DOWN CASE 54,68,100 RIGHT PLZ RUN SUBPROGRAM CKECK_LAVA_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED UP PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED DOWN PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE Y Y+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED LEFT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X-10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED RIGHT PLZ SET TWO BYTE BUTTON -1 PLZ SET TWO BYTE X X+10 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED FELL_IN_LAVA PLZ PRINT TEXT YOU FELL IN LAVA PLZ PRINT TEXT PLZ PRINT TEXT YOU LOSE PLZ SET TWO BYTE X -1 PLZ RUN SUBPROGRAM DRAW_FIELD IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_X SWITCH [[X]] CASE 80,90,100,110,120,130,140 CKECK_LAVA_Y PLZ RUN SUBPROGRAM CKECK_CARPET_X IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_LAVA_Y SWITCH [[Y]] CASE 80,90,100,110,120,130,140 FELL_IN_LAVA IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED ON_CARPET PLZ PRINT TEXT WHO WAS THE FIRST PLZ PRINT TEXT WHO PRESIDENT OF THE PLZ PRINT TEXT UNITED STATES? PLZ PRINT TEXT PLZ PRINT TEXT 1) RICHARD NIXON PLZ PRINT TEXT 2) GEORGE WASHINGTON PLZ PRINT TEXT 3) DONALD TRUMP PLZ PRINT TEXT 4) JOHN ADAMS I HAS A ONE BYTE DAT IZ CALLED ANSWER PLZ ASK TEH USR 2 GIMME A ONE BYTE ANSWER PLZ CLEAR TEH CONSOLE SWITCH [ANSWER] LABELCASE 2 WIN PLZ PRINT TEXT YOU LOSE! PLZ GOTO LABEL END DIS IZ MY LABEL! IT IZ KALLED WIN PLZ PRINT TEXT YOU WIN! DIS IZ MY LABEL! IT IZ KALLED END IM OUTTA UR CODE IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_CARPET_X SWITCH [[X]] CASE 280,290,300,310,320,330,340 CKECK_CARPET_Y IM OUTTA UR SUBPROGRAM IM IN UR SUBPROGRAM DAT IZ KALLED CKECK_CARPET_Y SWITCH [[Y]] CASE 180,190,200,210,220,230,240 ON_CARPET IM OUTTA UR SUBPROGRAM
請注意,標籤 “END” 與地毯子程式中的標籤相同。這無關緊要,因為在它之後是 IM OUTTA UR CODE,它會結束程式。