From ec9b1017e507e37846bbb1b2d17fc51f630fef20 Mon Sep 17 00:00:00 2001 From: bluesaxman Date: Wed, 16 Sep 2020 10:33:12 -0600 Subject: [PATCH] Server side client hooks finisehd up, but untested --- Server/server.pl | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/Server/server.pl b/Server/server.pl index dbdb023..fc491e4 100755 --- a/Server/server.pl +++ b/Server/server.pl @@ -364,6 +364,52 @@ my $server = Net::WebSocket::Server->new( addPool($conn->{session},$messageData->{pool}); $conn->send_utf8('{"info":"pool cleared", "request":"update"}'); } + if ($messageData->{action} =~ /muligan/) { + my @cards = delHand($conn->{session},$messageData->{hand}); + addCards($conn->{session},$messageData->{deck},\@cards); + addHand($conn->{session},$messageData->{hand}); + $conn->send_utf8('{"info":"hand returned to deck","request":"update"}'); + } + if ($messageData->{action} =~ /shuffle/) { + shuffleDeck($conn->{session},$messageData->{action}); + $conn->send_utf8('{"info":"deck shuffeled","request":"update"}'); + } + if ($messageData->{action} =~ /add/) { + if ($messageData->{type} =~ /deck/) { + addDeck($conn->{session},$messageData->{id}); + } + if ($messageData->{type} =~ /pool/) { + addPool($conn->{session},$messageData->{id}); + } + if ($messageData->{type} =~ /hand/) { + addHand($conn->{session},$conn->{user},$messageData->{id}); + } + $conn->send_utf8('{"info":"Added","request":"update"}'); + } + if ($messageData->{action} =~ /del/) { + if ($messageData->{type} =~ /deck/) { + delDeck($conn->{session},$messageData->{id}); + $conn->send_utf8('{"info":"Deck deleted, cards contained are gone"}'); + } + if ($messageData->{type} =~ /pool/) { + my @cards = delPool($conn->{session},$messageData->{id}); + addCards($conn->{session},$messageData->{deck},\@cards); + $conn->send_utf8('{"info":"Pool deleted, added to deck"}'); + } + if ($messageData->{type} =~ /hand/) { + my @cards = delHand($conn->{session},$conn->{user},$messageData->{id}); + my $newPool = $conn->{user}."_".$messageData->{id}; + addPool($conn->{session},$newPool); + splice(@{$sessions{$conn->{session}}{"pools"}{$newPool}{cards}},0,0,@cards); + $conn->send_utf8('{"info":"Hand deleted, added as pool"}'); + } + $conn->send_utf8('{"request":"update"}'); + } + if ($messageData->{action} =~ /ddf/) { + my @cards = generateDeck($messageData->{ddf}); + addCards($conn->{session},$messageData->{deck},\@cards); + $conn->send_utf8('{"info":"Deck file added to deck","request":"update"}'); + } } }, disconnect => sub {