← Back to ratslair.com
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nships.c7
-rw-r--r--server.c35
2 files changed, 36 insertions, 6 deletions
diff --git a/nships.c b/nships.c
index afa6d3c..96aedff 100644
--- a/nships.c
+++ b/nships.c
@@ -28,12 +28,14 @@ struct items {
char items[3][15];
};
-int menu(int y, int x, int h, int w, int aLen, char it[][15])
+int menu(int y, int x, int h, int w, int aLen, char it[][15], char title)
{
int key, i, c = 0, o = 0;
WINDOW * menu = newwin(h, w, y, x);
refresh();
box(menu, 0, 0);
+ if(title != 0)
+ mvwprintw(menu, 0, 1, "%s", title);
while(o == 0)
{
for(i = 0; i < aLen; ++i) {
@@ -73,6 +75,5 @@ int menu(int y, int x, int h, int w, int aLen, char it[][15])
int main()
{
- if(fork())
- hostGame();
+
}
diff --git a/server.c b/server.c
index 37b67a9..b4c939c 100644
--- a/server.c
+++ b/server.c
@@ -6,7 +6,7 @@
void hostGame()
{
- int sfd, err = 0;
+ int sfd, cfd, err = 0;
struct sockaddr_in addr;
addr.sin_family = AF_INET;
@@ -20,14 +20,43 @@ void hostGame()
printf("Created socket\n");
err = bind(sfd, (struct sockaddr*)&addr, sizeof(addr));
- if (err == -1)
+ if(err == -1)
printf("Failed to bind\n");
else
printf("Binded to socket\n");
- err = listen(sfd, 5);
+ err = listen(sfd, 2);
if(err == -1)
printf("Failed to listen");
else
printf("Listening...\n");
+
+ cfd = accpet(sfd, (struct sockaddr*)&)
+
+ for(;;)
+ {
+ read(sfd, )
+ }
+}
+
+void joinGame(char ip)
+{
+ int sfd, err = 0;
+ struct sockaddr_in addr;
+
+ addr.sin_family = AF_INET;
+ addr.sin_addr.s_addr = inet_addr(ip);
+ addr.sin_port = htons(PORT);
+
+ err = (sfd = socket(AF_INET, SOCK_STREAM, 0));
+ if(err == -1)
+ printf("Failed to create socket\n");
+ else
+ printf("Created socket\n");
+
+ err = (connect(sfd, (struct sockaddr*)&addr, sizeof(addr)));
+ if(err == -1)
+ printf("Failed to connect to server\n");
+ else
+ printf("Connected to server...\n");
}