home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / AgnesSorel.dxr / 00093.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  3.9 KB  |  156 lines

  1. global stock, tableau, aceisbase, pootimer, win
  2.  
  3. on checklose
  4.   if stock.cards.count = 0 then
  5.     repeat with it = 1 to tableau.count
  6.       if tableau[it].cards.count = 0 then
  7.         next repeat
  8.       end if
  9.       shit = tableau[it].cards[tableau[it].cards.count].spnum
  10.       repeat with cakes = 4 to 7
  11.         if sprite(cakes).blend < 100 then
  12.           if getValue(sprite(shit).member.name) = aceisbase then
  13.             abort()
  14.           end if
  15.           next repeat
  16.         end if
  17.         if (getValue(sprite(shit).member.name) = (getValue(sprite(cakes).member.name) + 1)) and (getSuit(sprite(shit).member.name) = getSuit(sprite(cakes).member.name)) then
  18.           abort()
  19.         end if
  20.       end repeat
  21.       repeat with akes = 1 to tableau.count
  22.         if tableau[akes].cards.count = 0 then
  23.           next repeat
  24.         end if
  25.         cakes = tableau[akes].cards[tableau[akes].cards.count].spnum
  26.         if (getValue(sprite(shit).member.name) = (getValue(sprite(cakes).member.name) - 1)) and (getSuitCo(sprite(shit).member.name) = getSuitCo(sprite(cakes).member.name)) and not getduplicate(shit - 1, cakes) then
  27.           abort()
  28.         end if
  29.       end repeat
  30.       if sprite(shit).backCardEQ() then
  31.         abort()
  32.       end if
  33.     end repeat
  34.     win = "no"
  35.     pootimer = timeout("pooo").new(130, #gotoit)
  36.   end if
  37. end
  38.  
  39. on gotoit
  40.   pootimer.forget()
  41.   go("gameover")
  42. end
  43.  
  44. on getValue arg
  45.   if (arg contains "hearts") or (arg contains "spades") then
  46.     return getOff(chars(arg, 1, arg.length - 7))
  47.   else
  48.     if arg contains "diamonds" then
  49.       return getOff(chars(arg, 1, arg.length - 9))
  50.     else
  51.       if arg contains "clubs" then
  52.         return getOff(chars(arg, 1, arg.length - 6))
  53.       end if
  54.     end if
  55.   end if
  56. end
  57.  
  58. on getOff numba
  59.   if numba = "ace" then
  60.     return 1
  61.   else
  62.     if numba = "two" then
  63.       return 2
  64.     else
  65.       if numba = "three" then
  66.         return 3
  67.       else
  68.         if numba = "four" then
  69.           return 4
  70.         else
  71.           if numba = "five" then
  72.             return 5
  73.           else
  74.             if numba = "six" then
  75.               return 6
  76.             else
  77.               if numba = "seven" then
  78.                 return 7
  79.               else
  80.                 if numba = "eight" then
  81.                   return 8
  82.                 else
  83.                   if numba = "nine" then
  84.                     return 9
  85.                   else
  86.                     if numba = "ten" then
  87.                       return 10
  88.                     else
  89.                       if numba = "jack" then
  90.                         return 11
  91.                       else
  92.                         if numba = "queen" then
  93.                           return 12
  94.                         else
  95.                           if numba = "king" then
  96.                             return 13
  97.                           end if
  98.                         end if
  99.                       end if
  100.                     end if
  101.                   end if
  102.                 end if
  103.               end if
  104.             end if
  105.           end if
  106.         end if
  107.       end if
  108.     end if
  109.   end if
  110. end
  111.  
  112. on getSuit arg
  113.   if arg contains "hearts" then
  114.     return #hearts
  115.   else
  116.     if arg contains "diamonds" then
  117.       return #diamonds
  118.     else
  119.       if arg contains "clubs" then
  120.         return #clubs
  121.       else
  122.         if arg contains "spades" then
  123.           return #spades
  124.         end if
  125.       end if
  126.     end if
  127.   end if
  128. end
  129.  
  130. on getSuitCo arg
  131.   if arg contains "hearts" then
  132.     return #red
  133.   else
  134.     if arg contains "diamonds" then
  135.       return #red
  136.     else
  137.       if arg contains "clubs" then
  138.         return #black
  139.       else
  140.         if arg contains "spades" then
  141.           return #black
  142.         end if
  143.       end if
  144.     end if
  145.   end if
  146. end
  147.  
  148. on getduplicate arch, argu
  149.   if (sprite(arch).member.name <> "empty") and (sprite(arch).member.name <> "backofcard") then
  150.     if (getValue(sprite(arch).member.name) = getValue(sprite(argu).member.name)) and (getSuitCo(sprite(arch).member.name) = getSuitCo(sprite(argu).member.name)) then
  151.       return 1
  152.     end if
  153.   end if
  154.   return 0
  155. end
  156.