summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorReiner Herrmann <reiner@reiner-h.de>2011-01-23 23:16:27 +0100
committerReiner Herrmann <reiner@reiner-h.de>2011-01-23 23:16:27 +0100
commit53a80d4dc85faea83f1a59039090a3a35424208e (patch)
tree5c0e64927ea40974d945460247b71f7648532c65 /src
parent2bd0e560986c66406bae90ff44f2dd6d3fec17be (diff)
implement function which sends initial stacks
Diffstat (limited to 'src')
-rw-r--r--src/game.c3
-rw-r--r--src/net.c2
-rw-r--r--src/net_server.c7
3 files changed, 8 insertions, 4 deletions
diff --git a/src/game.c b/src/game.c
index f868cac..9cff96e 100644
--- a/src/game.c
+++ b/src/game.c
@@ -271,8 +271,7 @@ void start_game(const bool servermode, const char* addr, const char* port)
sock = client_connect_server(addr, port);
strncpy(data->nickname, "nickname", 10);
- //client_hello(sock, "nickname1");
- //net_send()
+ net_send(sock, msg_type_hello, NULL);
net_recv(sock, msg_type_start_game);
net_recv(sock, msg_type_deal_cards);
net_recv(sock, msg_type_init_stacks);
diff --git a/src/net.c b/src/net.c
index f1b7e43..94dfe80 100644
--- a/src/net.c
+++ b/src/net.c
@@ -87,7 +87,7 @@ bool net_send(int sock, const msg_type_t type, void* param)
payload_len = server_send_deal_cards(&buf[2], payload_len, param);
break;
case msg_type_initial_stack:
- payload_len = server_send_initial_stack(&buf[2], payload_len, param);
+ payload_len = server_send_initial_stacks(&buf[2], payload_len);
break;
default:
printf("net_send: Unknown message type %d received\n", type);
diff --git a/src/net_server.c b/src/net_server.c
index a7f6c48..7127428 100644
--- a/src/net_server.c
+++ b/src/net_server.c
@@ -195,6 +195,11 @@ uint8_t server_send_deal_cards(uint8_t* payload, const uint8_t payload_len, cons
uint8_t server_send_initial_stacks(uint8_t* payload, const uint8_t payload_len)
{
-// TODO
+ data_store* ds = datamodel();
+
+ for(int i=0; i<NUM_TABLE_STACKS; i++)
+ payload[i] = ds->table_stacks.stacks[i].cards[0];
+
+ return NUM_TABLE_STACKS;
}