home *** CD-ROM | disk | FTP | other *** search
Text File | 2002-01-25 | 30.0 KB | 1,020 lines |
- global gDeck, gShuffle, gPlayerHand, gCompHand, gPlayerScore, gCompScore, gCardsRemaining, gCardsSelected, gDistance, gLooper, gBridge, gSingleCardSelected1, gSingleCardSelected2, gSingleCardSelected3, gSingleCardSelected4, gSingleCardSelected5, gGoatPos, gOgrePos, gEnemyDistance, gAttack, gCardsUsed, gPaused, gCount, gEnemyCard, gGoatFlyDistance, gMultiple, gGoatScore, gOgreScore, gWait4Rest, gBlockCount, gPegY, gPegX, gTemp, gRestart
-
- on startMovie
- gBlockCount = 0
- sprite(206).visible = 1
- sprite(207).visible = 1
- sprite(208).visible = 1
- sprite(46).visible = 0
- sprite(48).visible = 0
- gWait4Rest = 0
- gGoatScore = 0
- member("GoatScoreText").text = string(gGoatScore)
- gOgreScore = 0
- member("OgreScoreText").text = string(gOgreScore)
- gMultiple = 0
- sprite(98).visible = 0
- sprite(100).visible = 0
- gAttack = 0
- gPaused = 0
- sprite(120).visible = 0
- gCardsUsed = 0
- sprite(45).visible = 0
- sprite(34).visible = 0
- gGoatPos = 6
- gOgrePos = 28
- gCardsRemaining = 20
- member("CardsRemaingText").text = string(gCardsRemaining)
- gSingleCardSelected1 = 0
- gSingleCardSelected2 = 0
- gSingleCardSelected3 = 0
- gSingleCardSelected4 = 0
- gSingleCardSelected5 = 0
- sprite(28).visible = 1
- sprite(29).visible = 1
- sprite(30).visible = 1
- sprite(31).visible = 1
- sprite(32).visible = 1
- gCardsSelected = 0
- gLooper = 0
- gDistance = 0
- gDeck = [0, 1, 2, 3, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
- gPlayerHand = [1, 2, 3, 4, 5]
- gCompHand = [0, 2, 0, 4, 0]
- gBridge = [9, 9, 9, 9, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 9, 9, 9, 9, 9]
- repeat with gShuffle = 1 to 20
- gDeck[gShuffle] = random(6) - 1
- end repeat
- repeat with gShuffle = 1 to 5
- gPlayerHand[gShuffle] = random(6) - 1
- end repeat
- repeat with gShuffle = 1 to 5
- if gPlayerHand[gShuffle] = 0 then
- sprite(9 + gShuffle).member = "card_0"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 1 then
- sprite(9 + gShuffle).member = "card_1"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 2 then
- sprite(9 + gShuffle).member = "card_2"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 3 then
- sprite(9 + gShuffle).member = "card_3"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 4 then
- sprite(9 + gShuffle).member = "card_4"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 5 then
- sprite(9 + gShuffle).member = "card_5"
- end if
- end repeat
- repeat with gShuffle = 1 to 5
- gCompHand[gShuffle] = random(6) - 1
- end repeat
- repeat with gShuffle = 1 to 5
- if gCompHand[gShuffle] = 0 then
- sprite(15 + gShuffle).member = "card_0"
- next repeat
- end if
- if gCompHand[gShuffle] = 1 then
- sprite(15 + gShuffle).member = "card_1"
- next repeat
- end if
- if gCompHand[gShuffle] = 2 then
- sprite(15 + gShuffle).member = "card_2"
- next repeat
- end if
- if gCompHand[gShuffle] = 3 then
- sprite(15 + gShuffle).member = "card_3"
- next repeat
- end if
- if gCompHand[gShuffle] = 4 then
- sprite(15 + gShuffle).member = "card_4"
- next repeat
- end if
- if gCompHand[gShuffle] = 5 then
- sprite(15 + gShuffle).member = "card_5"
- end if
- end repeat
- repeat with gPegY = 0 to 4
- repeat with gPegX = 0 to 3
- sprite(125 + gPegX + (gPegY * 4)).loc = point(447 + (18 * gPegX), 122 + (12 * gPegY))
- sprite(125 + gPegX + (gPegY * 4)).visible = 1
- end repeat
- end repeat
- end
-
- on EnemyAI
- if gPaused = 0 then
- AnyPossibleGoatMoves()
- if (gGoatPos + 12) <= gOgrePos then
- repeat with gCount = 1 to 5
- if gCount = 1 then
- gHighCard = gCompHand[gCount]
- gEnemyCard = gCount
- end if
- if gCount >= 2 then
- if gCompHand[gCount] > gHighCard then
- gHighCard = gCompHand[gCount]
- gEnemyCard = gCount
- end if
- end if
- end repeat
- gCardsUsed = gCardsUsed + 1
- if gEnemyCard = 1 then
- gCompHand[1] = gDeck[gCardsUsed]
- sprite(28).visible = 0
- else
- if gEnemyCard = 2 then
- gCompHand[2] = gDeck[gCardsUsed]
- sprite(29).visible = 0
- else
- if gEnemyCard = 3 then
- gCompHand[3] = gDeck[gCardsUsed]
- sprite(30).visible = 0
- else
- if gEnemyCard = 4 then
- gCompHand[4] = gDeck[gCardsUsed]
- sprite(31).visible = 0
- else
- if gEnemyCard = 5 then
- gCompHand[5] = gDeck[gCardsUsed]
- sprite(32).visible = 0
- end if
- end if
- end if
- end if
- end if
- gEnemyDistance = gHighCard
- EnemyAdvance()
- sprite(124 + gCardsUsed).visible = 0
- else
- if (gGoatPos + 5) < gOgrePos then
- gEnemyCard = random(5)
- gHighCard = gCompHand[gEnemyCard]
- gCardsUsed = gCardsUsed + 1
- if gEnemyCard = 1 then
- gCompHand[1] = gDeck[gCardsUsed]
- sprite(28).visible = 0
- else
- if gEnemyCard = 2 then
- gCompHand[2] = gDeck[gCardsUsed]
- sprite(29).visible = 0
- else
- if gEnemyCard = 3 then
- gCompHand[3] = gDeck[gCardsUsed]
- sprite(30).visible = 0
- else
- if gEnemyCard = 4 then
- gCompHand[4] = gDeck[gCardsUsed]
- sprite(31).visible = 0
- else
- if gEnemyCard = 5 then
- gCompHand[5] = gDeck[gCardsUsed]
- sprite(32).visible = 0
- end if
- end if
- end if
- end if
- end if
- gEnemyDistance = gHighCard
- EnemyAdvance()
- sprite(124 + gCardsUsed).visible = 0
- else
- repeat with gCount = 1 to 5
- gAttack = 0
- if (gOgrePos - gGoatPos) = gCompHand[gCount] then
- gEnemyDistance = gCompHand[gCount]
- gAttack = 1
- EnemyAttack()
- exit repeat
- end if
- end repeat
- if gAttack = 0 then
- EnemyRetreat()
- sprite(124 + gCardsUsed).visible = 0
- end if
- end if
- end if
- end if
- end
-
- on EnemyAdvance
- if gPaused = 0 then
- gBridge[gOgrePos] = 0
- gLooper = 0
- repeat while gLooper < gEnemyDistance
- puppetSound(1, "WormWalk1c")
- sprite(40).member = "badguy_standing2"
- sprite(40).locH = sprite(40).locH - 12
- sprite(40).locV = sprite(40).locV - 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH - 12
- sprite(gCount).locV = sprite(gCount).locV - 4
- end repeat
- startTimer()
- repeat while the timer < 8
- updateStage()
- end repeat
- updateStage()
- puppetSound(2, "WormWalk2c")
- sprite(40).member = "badguy_standing1"
- sprite(40).locH = sprite(40).locH - 12
- sprite(40).locV = sprite(40).locV - 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH - 12
- sprite(gCount).locV = sprite(gCount).locV - 4
- end repeat
- startTimer()
- repeat while the timer < 8
- updateStage()
- end repeat
- updateStage()
- gOgrePos = gOgrePos - 1
- gLooper = gLooper + 1
- end repeat
- startTimer()
- repeat while the timer < (20 - (gEnemyDistance * 4))
- updateStage()
- end repeat
- gBridge[gOgrePos] = 2
- gEnemyDistance = 0
- gCardsSelected = 0
- gLooper = 0
- if gEnemyCard = 1 then
- sprite(16).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 2 then
- sprite(17).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 3 then
- sprite(18).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 4 then
- sprite(19).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 5 then
- sprite(20).member = "card_" & gDeck[gCardsUsed]
- end if
- end if
- end if
- end if
- end if
- updateStage()
- startTimer()
- repeat while the timer < 8
- updateStage()
- end repeat
- sprite(28).visible = 1
- sprite(29).visible = 1
- sprite(30).visible = 1
- sprite(31).visible = 1
- sprite(32).visible = 1
- gCardsRemaining = gCardsRemaining - 1
- member("CardsRemaingText").text = string(gCardsRemaining)
- sprite(45).visible = 1
- sprite(45).member = "card_" & gDeck[gCardsUsed + 1]
- end if
- end
-
- on EnemyRetreat
- if gPaused = 0 then
- repeat with gCount = 1 to 5
- gEnemyCard = random(5)
- if gBridge[gOgrePos - gCompHand[gEnemyCard]] = 0 then
- exit repeat
- end if
- end repeat
- if gBridge[gOgrePos - gCompHand[gEnemyCard]] <> 0 then
- repeat with gCount = 1 to 5
- gEnemyCard = random(5)
- if gBridge[gOgrePos + gCompHand[gEnemyCard]] = 0 then
- exit repeat
- end if
- end repeat
- if gBridge[gOgrePos + gCompHand[gEnemyCard]] = 0 then
- put "force forward"
- gHighCard = gCompHand[gEnemyCard]
- gCardsUsed = gCardsUsed + 1
- if gEnemyCard = 1 then
- gCompHand[1] = gDeck[gCardsUsed]
- sprite(28).visible = 0
- else
- if gEnemyCard = 2 then
- gCompHand[2] = gDeck[gCardsUsed]
- sprite(29).visible = 0
- else
- if gEnemyCard = 3 then
- gCompHand[3] = gDeck[gCardsUsed]
- sprite(30).visible = 0
- else
- if gEnemyCard = 4 then
- gCompHand[4] = gDeck[gCardsUsed]
- sprite(31).visible = 0
- else
- if gEnemyCard = 5 then
- gCompHand[5] = gDeck[gCardsUsed]
- sprite(32).visible = 0
- end if
- end if
- end if
- end if
- end if
- gEnemyDistance = gHighCard
- EnemyAdvance()
- else
- put "force Goat Win"
- end if
- end if
- if gBridge[gOgrePos - gCompHand[gEnemyCard]] = 0 then
- gHighCard = gCompHand[gEnemyCard]
- gCardsUsed = gCardsUsed + 1
- if gEnemyCard = 1 then
- gCompHand[1] = gDeck[gCardsUsed]
- sprite(28).visible = 0
- else
- if gEnemyCard = 2 then
- gCompHand[2] = gDeck[gCardsUsed]
- sprite(29).visible = 0
- else
- if gEnemyCard = 3 then
- gCompHand[3] = gDeck[gCardsUsed]
- sprite(30).visible = 0
- else
- if gEnemyCard = 4 then
- gCompHand[4] = gDeck[gCardsUsed]
- sprite(31).visible = 0
- else
- if gEnemyCard = 5 then
- gCompHand[5] = gDeck[gCardsUsed]
- sprite(32).visible = 0
- end if
- end if
- end if
- end if
- end if
- gEnemyDistance = gHighCard
- end if
- gLooper = 0
- gBridge[gOgrePos] = 0
- if (gOgrePos + gEnemyDistance) > 28 then
- put "can't go back"
- sprite(120).member = "nomoves_troll"
- sprite(120).visible = 1
- puppetSound(3, "sheepbaa")
- gPaused = 1
- gWait4Rest = 1
- gGoatScore = gGoatScore + 10
- member("GoatScoreText").text = string(gGoatScore)
- exit
- end if
- repeat while gLooper < gEnemyDistance
- puppetSound(1, "WormWalk1c")
- sprite(40).member = "badguy_standing2"
- sprite(40).locH = sprite(40).locH + 12
- sprite(40).locV = sprite(40).locV + 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH + 12
- sprite(gCount).locV = sprite(gCount).locV + 4
- end repeat
- startTimer()
- repeat while the timer < 8
- updateStage()
- end repeat
- updateStage()
- puppetSound(2, "WormWalk2c")
- sprite(40).member = "badguy_standing1"
- sprite(40).locH = sprite(40).locH + 12
- sprite(40).locV = sprite(40).locV + 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH + 12
- sprite(gCount).locV = sprite(gCount).locV + 4
- end repeat
- startTimer()
- repeat while the timer < 8
- updateStage()
- end repeat
- gOgrePos = gOgrePos + 1
- gLooper = gLooper + 1
- end repeat
- startTimer()
- repeat while the timer < (20 - (gEnemyDistance * 4))
- updateStage()
- end repeat
- gBridge[gOgrePos] = 2
- gEnemyDistance = 0
- gCardsSelected = 0
- gLooper = 0
- if gEnemyCard = 1 then
- sprite(16).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 2 then
- sprite(17).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 3 then
- sprite(18).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 4 then
- sprite(19).member = "card_" & gDeck[gCardsUsed]
- else
- if gEnemyCard = 5 then
- sprite(20).member = "card_" & gDeck[gCardsUsed]
- end if
- end if
- end if
- end if
- end if
- updateStage()
- startTimer()
- repeat while the timer < 8
- updateStage()
- end repeat
- sprite(28).visible = 1
- sprite(29).visible = 1
- sprite(30).visible = 1
- sprite(31).visible = 1
- sprite(32).visible = 1
- gCardsRemaining = gCardsRemaining - 1
- member("CardsRemaingText").text = string(gCardsRemaining)
- sprite(45).visible = 1
- sprite(45).member = "card_" & gDeck[gCardsUsed + 1]
- end if
- end
-
- on EnemyAttack
- if gPaused = 0 then
- gBridge[gOgrePos] = 0
- gLooper = 0
- repeat while gLooper < gEnemyDistance
- puppetSound(1, "WormWalk1c")
- sprite(40).member = "badguy_standing2"
- sprite(40).locH = sprite(40).locH - 12
- sprite(40).locV = sprite(40).locV - 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH - 12
- sprite(gCount).locV = sprite(gCount).locV - 4
- end repeat
- startTimer()
- repeat while the timer < 3
- updateStage()
- end repeat
- puppetSound(2, "WormWalk2c")
- sprite(40).member = "badguy_standing1"
- sprite(40).locH = sprite(40).locH - 12
- sprite(40).locV = sprite(40).locV - 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH - 12
- sprite(gCount).locV = sprite(gCount).locV - 4
- end repeat
- startTimer()
- repeat while the timer < 3
- updateStage()
- end repeat
- gOgrePos = gOgrePos - 1
- gLooper = gLooper + 1
- end repeat
- startTimer()
- repeat while the timer < (20 - (gEnemyDistance * 4))
- updateStage()
- end repeat
- MultipleOgre()
- repeat with gCount = 1 to 5
- if gEnemyDistance = gPlayerHand[gCount] then
- gBlockCount = gBlockCount + 1
- end if
- end repeat
- if gBlockCount >= gMultiple then
- sprite(98).locV = sprite(40).locV
- sprite(98).locH = sprite(40).locH
- sprite(98).visible = 1
- if gGoatPos >= 6 then
- gOgreScore = gOgreScore - 10
- end if
- gLooper = 0
- repeat while gLooper < gEnemyDistance
- puppetSound(1, "WormWalk1c")
- sprite(40).member = "badguy_standing2"
- sprite(40).locH = sprite(40).locH + 12
- sprite(40).locV = sprite(40).locV + 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH + 12
- sprite(gCount).locV = sprite(gCount).locV + 4
- end repeat
- startTimer()
- repeat while the timer < 3
- updateStage()
- end repeat
- puppetSound(2, "WormWalk2c")
- sprite(40).member = "badguy_standing1"
- sprite(40).locH = sprite(40).locH + 12
- sprite(40).locV = sprite(40).locV + 4
- repeat with gCount = 72 to 92
- sprite(gCount).locH = sprite(gCount).locH + 12
- sprite(gCount).locV = sprite(gCount).locV + 4
- end repeat
- startTimer()
- repeat while the timer < 3
- updateStage()
- end repeat
- gOgrePos = gOgrePos + 1
- gLooper = gLooper + 1
- end repeat
- sprite(98).visible = 0
- startTimer()
- repeat while the timer < 5
- updateStage()
- end repeat
- if gGoatPos >= 6 then
- repeat with gCount = 1 to 5
- if gEnemyDistance = gPlayerHand[gCount] then
- if (gGoatPos - gGoatFlyDistance) < 6 then
- exit repeat
- end if
- if gCount = 1 then
- gPlayerHand[1] = gDeck[gCardsUsed]
- sprite(10).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 2 then
- gPlayerHand[2] = gDeck[gCardsUsed]
- sprite(11).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 3 then
- gPlayerHand[3] = gDeck[gCardsUsed]
- sprite(12).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 4 then
- gPlayerHand[4] = gDeck[gCardsUsed]
- sprite(13).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 5 then
- gPlayerHand[5] = gDeck[gCardsUsed]
- sprite(14).member = "card_" & gDeck[gCardsUsed]
- end if
- end if
- end if
- end if
- end if
- gCardsUsed = gCardsUsed + 1
- sprite(124 + gCardsUsed).visible = 0
- gCardsRemaining = gCardsRemaining - 1
- member("CardsRemaingText").text = string(gCardsRemaining)
- gMultiple = gMultiple - 1
- if gMultiple <= 0 then
- exit repeat
- end if
- end if
- end repeat
- end if
- else
- sprite(100).locV = sprite(40).locV
- sprite(100).locH = sprite(40).locH
- sprite(100).visible = 1
- GoatFlyBack()
- end if
- startTimer()
- repeat while the timer < 5
- updateStage()
- end repeat
- if gGoatPos >= 6 then
- repeat with gCount = 1 to 5
- if gEnemyDistance = gCompHand[gCount] then
- if (gGoatPos - gGoatFlyDistance) < 6 then
- exit repeat
- end if
- if gCount = 1 then
- gCompHand[1] = gDeck[gCardsUsed]
- sprite(16).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 2 then
- gCompHand[2] = gDeck[gCardsUsed]
- sprite(17).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 3 then
- gCompHand[3] = gDeck[gCardsUsed]
- sprite(18).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 4 then
- gCompHand[4] = gDeck[gCardsUsed]
- sprite(19).member = "card_" & gDeck[gCardsUsed]
- else
- if gCount = 5 then
- gCompHand[5] = gDeck[gCardsUsed]
- sprite(20).member = "card_" & gDeck[gCardsUsed]
- end if
- end if
- end if
- end if
- end if
- gCardsUsed = gCardsUsed + 1
- sprite(124 + gCardsUsed).visible = 0
- gCardsRemaining = gCardsRemaining - 1
- member("CardsRemaingText").text = string(gCardsRemaining)
- end if
- end repeat
- end if
- gBlockCount = 0
- gBridge[gOgrePos] = 2
- gEnemyDistance = 0
- gCardsSelected = 0
- gLooper = 0
- sprite(28).visible = 1
- sprite(29).visible = 1
- sprite(30).visible = 1
- sprite(31).visible = 1
- sprite(32).visible = 1
- gOgreScore = gOgreScore + 10
- member("OgreScoreText").text = string(gOgreScore)
- if gGoatPos < 6 then
- gOgreScore = gOgreScore + 10
- member("OgreScoreText").text = string(gOgreScore)
- sprite(120).member = "fallengoat"
- sprite(120).visible = 1
- puppetSound(3, "sheepbaa")
- gPaused = 1
- gWait4Rest = 1
- end if
- if gOgreScore >= 100 then
- gPaused = 1
- puppetSound(5, "lose10")
- go(22)
- end if
- scoreTally()
- sprite(45).visible = 1
- sprite(45).member = "card_" & gDeck[gCardsUsed + 1]
- end if
- end
-
- on GoatFlyBack
- puppetSound(4, "sheep")
- gGoatFlyDistance = 6 + (gEnemyDistance * gMultiple / 2)
- gBridge[gGoatPos] = 0
- sprite(35).member = "goathit"
- gLooper = 0
- repeat while gLooper < gGoatFlyDistance
- sprite(35).locH = sprite(35).locH - 12
- sprite(35).locV = sprite(35).locV - 4
- repeat with pCount = 50 to 70
- sprite(pCount).locH = sprite(pCount).locH - 12
- sprite(pCount).locV = sprite(pCount).locV - 4
- end repeat
- startTimer()
- repeat while the timer < 3
- updateStage()
- end repeat
- updateStage()
- sprite(35).locH = sprite(35).locH - 12
- sprite(35).locV = sprite(35).locV - 4
- repeat with pCount = 50 to 70
- sprite(pCount).locH = sprite(pCount).locH - 12
- sprite(pCount).locV = sprite(pCount).locV - 4
- end repeat
- startTimer()
- repeat while the timer < 3
- updateStage()
- end repeat
- updateStage()
- gGoatPos = gGoatPos - 1
- gLooper = gLooper + 1
- end repeat
- if gGoatPos < 3 then
- gGoatPos = 3
- end if
- gMultiple = 0
- gBridge[gGoatPos] = 1
- sprite(35).member = "goaty2"
- sprite(100).visible = 0
- startTimer()
- repeat while the timer < 5
- updateStage()
- end repeat
- sprite(28).visible = 1
- sprite(29).visible = 1
- sprite(30).visible = 1
- sprite(31).visible = 1
- sprite(32).visible = 1
- if gGoatPos < 6 then
- if sprite(208).visible = 1 then
- sprite(208).visible = 0
- else
- if sprite(207).visible = 1 then
- sprite(207).visible = 0
- else
- if sprite(206).visible = 1 then
- sprite(206).visible = 0
- else
- gPaused = 1
- puppetSound(5, "lose10")
- go(22)
- end if
- end if
- end if
- sprite(120).member = "fallengoat"
- sprite(120).visible = 1
- puppetSound(3, "sheepbaa")
- gPaused = 1
- gWait4Rest = 1
- end if
- if gOgreScore >= 100 then
- sprite(206).visible = 0
- sprite(207).visible = 0
- sprite(208).visible = 0
- gPaused = 1
- puppetSound(5, "lose10")
- go(22)
- end if
- end
-
- on MultipleOgre
- repeat with gCount = 1 to 5
- if gEnemyDistance = gCompHand[gCount] then
- gMultiple = gMultiple + 1
- sprite(27 + gCount).visible = 0
- end if
- end repeat
- end
-
- on resetGame
- sprite(35).loc = point(27, 111)
- sprite(40).loc = point(549, 297)
- sprite(50).loc = point(-148, 138)
- sprite(52).loc = point(-148 + (1 * 24), 138 + (1 * 8))
- sprite(54).loc = point(-148 + (2 * 24), 138 + (2 * 8))
- sprite(56).loc = point(-148 + (3 * 24), 138 + (3 * 8))
- sprite(58).loc = point(-148 + (4 * 24), 138 + (4 * 8))
- sprite(60).loc = point(-28, 178)
- sprite(61).loc = point(-28 + (1 * 24), 178 + (1 * 8))
- sprite(63).loc = point(-28 + (2 * 24), 178 + (2 * 8))
- sprite(65).loc = point(-28 + (3 * 24), 178 + (3 * 8))
- sprite(67).loc = point(-28 + (4 * 24), 178 + (4 * 8))
- sprite(69).loc = point(-28 + (5 * 24), 178 + (5 * 8))
- sprite(51).loc = point(-158, 131)
- sprite(53).loc = point(-158 + (1 * 24), 131 + (1 * 8))
- sprite(55).loc = point(-158 + (2 * 24), 131 + (2 * 8))
- sprite(57).loc = point(-158 + (3 * 24), 131 + (3 * 8))
- sprite(59).loc = point(-158 + (4 * 24), 131 + (4 * 8))
- sprite(62).loc = point(-158 + (6 * 24), 131 + (6 * 8))
- sprite(64).loc = point(-158 + (7 * 24), 131 + (7 * 8))
- sprite(66).loc = point(-158 + (8 * 24), 131 + (8 * 8))
- sprite(68).loc = point(-158 + (9 * 24), 131 + (9 * 8))
- sprite(70).loc = point(-158 + (10 * 24), 131 + (10 * 8))
- sprite(72).loc = point(380, 329)
- sprite(74).loc = point(380 + (1 * 24), 329 + (1 * 8))
- sprite(76).loc = point(380 + (2 * 24), 329 + (2 * 8))
- sprite(78).loc = point(380 + (3 * 24), 329 + (3 * 8))
- sprite(80).loc = point(380 + (4 * 24), 329 + (4 * 8))
- sprite(82).loc = point(500, 369)
- sprite(83).loc = point(500 + (1 * 24), 369 + (1 * 8))
- sprite(85).loc = point(500 + (2 * 24), 369 + (2 * 8))
- sprite(87).loc = point(500 + (3 * 24), 369 + (3 * 8))
- sprite(89).loc = point(500 + (4 * 24), 369 + (4 * 8))
- sprite(91).loc = point(500 + (5 * 24), 369 + (5 * 8))
- sprite(73).loc = point(372, 322)
- sprite(75).loc = point(371 + (1 * 24), 322 + (1 * 8))
- sprite(77).loc = point(371 + (2 * 24), 322 + (2 * 8))
- sprite(79).loc = point(371 + (3 * 24), 322 + (3 * 8))
- sprite(81).loc = point(371 + (4 * 24), 322 + (4 * 8))
- sprite(84).loc = point(372 + (6 * 24), 322 + (6 * 8))
- sprite(86).loc = point(372 + (7 * 24), 322 + (7 * 8))
- sprite(88).loc = point(372 + (8 * 24), 322 + (8 * 8))
- sprite(90).loc = point(372 + (9 * 24), 322 + (9 * 8))
- sprite(92).loc = point(372 + (10 * 24), 322 + (10 * 8))
- gMultiple = 0
- sprite(98).visible = 0
- sprite(100).visible = 0
- gAttack = 1
- gPaused = 0
- sprite(120).visible = 0
- gCardsUsed = 0
- sprite(45).visible = 0
- sprite(34).visible = 0
- gGoatPos = 6
- gOgrePos = 28
- gCardsRemaining = 20
- member("CardsRemaingText").text = string(gCardsRemaining)
- gSingleCardSelected1 = 0
- gSingleCardSelected2 = 0
- gSingleCardSelected3 = 0
- gSingleCardSelected4 = 0
- gSingleCardSelected5 = 0
- sprite(28).visible = 1
- sprite(29).visible = 1
- sprite(30).visible = 1
- sprite(31).visible = 1
- sprite(32).visible = 1
- gCardsSelected = 0
- gLooper = 0
- gDistance = 0
- gDeck = [0, 1, 2, 3, 4, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
- gPlayerHand = [1, 2, 3, 4, 5]
- gCompHand = [0, 2, 0, 4, 0]
- gBridge = [9, 9, 9, 9, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 9, 9, 9, 9, 9]
- repeat with gShuffle = 1 to 20
- gDeck[gShuffle] = random(6) - 1
- end repeat
- repeat with gShuffle = 1 to 5
- gPlayerHand[gShuffle] = random(6) - 1
- end repeat
- repeat with gShuffle = 1 to 5
- if gPlayerHand[gShuffle] = 0 then
- sprite(9 + gShuffle).member = "card_0"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 1 then
- sprite(9 + gShuffle).member = "card_1"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 2 then
- sprite(9 + gShuffle).member = "card_2"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 3 then
- sprite(9 + gShuffle).member = "card_3"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 4 then
- sprite(9 + gShuffle).member = "card_4"
- next repeat
- end if
- if gPlayerHand[gShuffle] = 5 then
- sprite(9 + gShuffle).member = "card_5"
- end if
- end repeat
- repeat with gShuffle = 1 to 5
- gCompHand[gShuffle] = random(6) - 1
- end repeat
- repeat with gShuffle = 1 to 5
- if gCompHand[gShuffle] = 0 then
- sprite(15 + gShuffle).member = "card_0"
- next repeat
- end if
- if gCompHand[gShuffle] = 1 then
- sprite(15 + gShuffle).member = "card_1"
- next repeat
- end if
- if gCompHand[gShuffle] = 2 then
- sprite(15 + gShuffle).member = "card_2"
- next repeat
- end if
- if gCompHand[gShuffle] = 3 then
- sprite(15 + gShuffle).member = "card_3"
- next repeat
- end if
- if gCompHand[gShuffle] = 4 then
- sprite(15 + gShuffle).member = "card_4"
- next repeat
- end if
- if gCompHand[gShuffle] = 5 then
- sprite(15 + gShuffle).member = "card_5"
- end if
- end repeat
- repeat with gPegY = 0 to 4
- repeat with gPegX = 0 to 3
- sprite(125 + gPegX + (gPegY * 4)).loc = point(447 + (18 * gPegX), 122 + (12 * gPegY))
- sprite(125 + gPegX + (gPegY * 4)).visible = 1
- end repeat
- end repeat
- gCardsUsed = 0
- go(1)
- end
-
- on scoreTally
- if (gGoatPos >= 6) and (gOgrePos <= 28) then
- if (gCardsUsed >= 21) or (gCardsRemaining <= 0) then
- if (gGoatPos - 6) >= (28 - gOgrePos) then
- sprite(120).member = "sign_noCardsGoatWin"
- sprite(120).visible = 1
- puppetSound(3, "sheepbaa")
- gPaused = 1
- gGoatScore = gGoatScore + 10
- member("GoatScoreText").text = string(gGoatScore)
- gWait4Rest = 1
- else
- gOgreScore = gOgreScore + 10
- member("OgreScoreText").text = string(gOgreScore)
- sprite(120).member = "sign_noCardsOgreWin"
- sprite(120).visible = 1
- puppetSound(3, "sheepbaa")
- gPaused = 1
- if sprite(208).visible = 1 then
- sprite(208).visible = 0
- else
- if sprite(207).visible = 1 then
- sprite(207).visible = 0
- else
- if sprite(206).visible = 1 then
- sprite(206).visible = 0
- else
- gPaused = 1
- puppetSound(5, "lose10")
- go(22)
- end if
- end if
- end if
- gWait4Rest = 1
- end if
- end if
- if gGoatScore >= 100 then
- gPaused = 1
- puppetSound(5, "win10")
- go(12)
- else
- if gOgreScore >= 100 then
- puppetSound(5, "lose10")
- gPaused = 1
- go(22)
- end if
- end if
- end if
- end
-
- on AnyPossibleGoatMoves
- repeat with gTemp = 0 to 5
- if gPlayerHand[1] = gTemp then
- if (gGoatPos + gTemp) < gOgrePos then
- exit
- end if
- if (gGoatPos - gTemp) >= 6 then
- exit
- end if
- if (gGoatPos + gTemp) = gOgrePos then
- exit
- end if
- next repeat
- end if
- if gPlayerHand[2] = gTemp then
- if (gGoatPos + gTemp) < gOgrePos then
- exit
- end if
- if (gGoatPos - gTemp) >= 6 then
- exit
- end if
- if (gGoatPos + gTemp) = gOgrePos then
- exit
- end if
- next repeat
- end if
- if gPlayerHand[3] = gTemp then
- if (gGoatPos + gTemp) < gOgrePos then
- exit
- end if
- if (gGoatPos - gTemp) >= 6 then
- exit
- end if
- if (gGoatPos + gTemp) = gOgrePos then
- exit
- end if
- next repeat
- end if
- if gPlayerHand[4] = gTemp then
- if (gGoatPos + gTemp) < gOgrePos then
- exit
- end if
- if (gGoatPos - gTemp) >= 6 then
- exit
- end if
- if (gGoatPos + gTemp) = gOgrePos then
- exit
- end if
- next repeat
- end if
- if gPlayerHand[5] = gTemp then
- if (gGoatPos + gTemp) < gOgrePos then
- exit
- end if
- if (gGoatPos - gTemp) >= 6 then
- exit
- end if
- if (gGoatPos + gTemp) = gOgrePos then
- exit
- end if
- end if
- end repeat
- sprite(120).member = "nomoves"
- sprite(120).visible = 1
- puppetSound(3, "sheepbaa")
- gPaused = 1
- gWait4Rest = 1
- gGoatScore = gGoatScore + 10
- member("GoatScoreText").text = string(gGoatScore)
- if sprite(208).visible = 1 then
- sprite(208).visible = 0
- else
- if sprite(207).visible = 1 then
- sprite(207).visible = 0
- else
- if sprite(206).visible = 1 then
- sprite(206).visible = 0
- else
- gPaused = 1
- puppetSound(5, "lose10")
- go(22)
- end if
- end if
- end if
- end
-