Compare commits

..

No commits in common. "1d67ecdf43feb9210d1f9d1dddee39b444b293e1" and "671d1410d5e6e034306681f99a1eedb3b6fe3ce9" have entirely different histories.

1 changed files with 13 additions and 40 deletions

View File

@ -41,7 +41,6 @@ stacks={}
c_hover=nil
hand=nil
locations={}
debug=false
function create_deck()
local cards={}
@ -82,25 +81,10 @@ end
function BOOT()
stacks={
{}, {}, -- deck, pile
create_deck(), {}, -- deck, pile
{}, {}, {}, {}, -- finished
{}, {}, {}, {}, {}, {}, {}
}
if debug then
for i=13,1,-1 do
for a=1,4 do
table.insert(stacks[7+a], {
x=0,y=0,state=0,
rank=i,
suit=a
})
end
end
return
end
stacks[1] = create_deck()
shuffle(stacks[1])
table.insert(locations,{1,2,2})
-- Set up stacks
@ -245,15 +229,9 @@ function update()
if #stacks[1]==0 then
exhausted=true
end
elseif hand and hover and
hand[1]==hover[1] and hand[2]==hover[2] and left
then
for i=3,6 do
if move_sel(hand, {i,#stacks[i]}) then
hand=nil
break
end
end
--[[elseif hand and hover and
hand[1]==hover[1] and left
then--]] -- TODO: double click to send to finished
elseif hand and hover and left then
move_sel(hand,hover)
hand=nil
@ -296,8 +274,8 @@ function update()
last_left=left
end
function move_is_valid(hand,hover)
if hand[1]==hover[1] then return false end
function move_sel(hand,hover)
if hand[1]==hover[1] then return end
local moved_card=stacks[hand[1]][hand[2]]
local is_valid_move=false
if hover[1]==1 then
@ -333,19 +311,14 @@ function move_is_valid(hand,hover)
is_valid_move=true
end
end
return is_valid_move
end
function move_sel(hand,hover)
if not move_is_valid(hand, hover) then return false end
for i=hand[2],#stacks[hand[1]] do
stacks[hand[1]][hand[2]].state=0
table.insert(
stacks[hover[1]],
table.remove(stacks[hand[1]], hand[2]))
if is_valid_move then
for i=hand[2],#stacks[hand[1]] do
stacks[hand[1]][hand[2]].state=0
table.insert(
stacks[hover[1]],
table.remove(stacks[hand[1]], hand[2]))
end
end
return true
end
function sel_can_move(sel)