diff options
Diffstat (limited to 'party.c')
-rw-r--r-- | party.c | 86 |
1 files changed, 0 insertions, 86 deletions
@@ -8,8 +8,6 @@ #include "dat.h" #include "fns.h" -/* Party */ - Party * newparty(Party *p, Player *player0, Player *player1) { @@ -50,87 +48,3 @@ initparty(Party *p) { p->next = p->prev = p; } - -/* Player */ - -Player * -newplayer(char *name, NetConn *nc) -{ - Player *p; - - p = emalloc(sizeof(Player)); - p->name = name? strdup(name): nil; - p->conn = nc; - p->oldkdown = p->kdown = 0; - p->next = nil; - - return p; -} - -void -delplayer(Player *p) -{ - free(p->name); - free(p); -} - -/* Player queue */ - -static void -playerq_put(Playerq *pq, Player *p) -{ - if(pq->tail == nil) - pq->head = pq->tail = p; - else{ - pq->tail->next = p; - pq->tail = p; - } - pq->len++; -} - -static Player * -playerq_get(Playerq *pq) -{ - Player *p; - - if(pq->head == nil) - return nil; - - p = pq->head; - if(pq->head == pq->tail) - pq->head = pq->tail = nil; - else{ - pq->head = p->next; - p->next = nil; - } - pq->len--; - return p; -} - -static void -playerq_del(Playerq *pq, Player *p) -{ - Player *np; - - if(pq->head == p){ - pq->get(pq); - return; - } - - for(np = pq->head; np != nil && np->next != nil; np = np->next) - if(np->next == p){ - np->next = np->next->next; - p->next = nil; - pq->len--; - } -} - -void -initplayerq(Playerq *pq) -{ - pq->head = pq->tail = nil; - pq->len = 0; - pq->put = playerq_put; - pq->get = playerq_get; - pq->del = playerq_del; -} |