/*
* Empire - A multi-player, client/server Internet based war game.
- * Copyright (C) 1986-2006, Dave Pare, Jeff Bailey, Thomas Ruschak,
+ * Copyright (C) 1986-2009, Dave Pare, Jeff Bailey, Thomas Ruschak,
* Ken Stevens, Steve McClure
*
* This program is free software; you can redistribute it and/or modify
* ---
*
* lost.h: Definitions for lost items
- *
+ *
* Known contributors to this file:
* Steve McClure, 1997
*/
#ifndef LOST_H
#define LOST_H
+#include <time.h>
+#include "types.h"
+
struct loststr {
/* initial part must match struct empobj */
- short ef_type;
+ signed ef_type: 8;
+ unsigned lost_seqno: 12;
+ unsigned lost_generation: 12;
+ int lost_uid;
+ time_t lost_timestamp; /* When it was lost */
natid lost_owner; /* Who lost it */
/* end of part matching struct empobj */
- int lost_uid; /* lost ID (assigned, otherwise unused) */
- char lost_type; /* Type of thing (ship, plane, nuke, land, sector) */
- short lost_id; /* ID of lost thing */
+ short lost_type; /* Type of thing (ship, plane, nuke, land, sector) */
+ int lost_id; /* uid of lost thing (0 for sector)*/
coord lost_x;
coord lost_y;
- time_t lost_timestamp; /* When it was lost */
};
#define getlost(n, p) ef_read(EF_LOST, (n), (p))
#define putlost(n, p) ef_write(EF_LOST, (n), (p))
/* src/lib/subs/lostsub.c */
-extern void makelost(char, natid, short, coord, coord);
-extern void makenotlost(char, natid, short, coord, coord);
+extern void lost_and_found(int, natid, natid, int, coord, coord);
+extern void makelost(int, natid, int, coord, coord);
+extern void makenotlost(int, natid, int, coord, coord);
+extern void delete_old_lostitems(void);
#endif