X-Git-Url: http://git.pond.sub.org/?p=empserver;a=blobdiff_plain;f=include%2Floan.h;h=c4819cf65583e43f1a1f291da227310afaf34ec0;hp=847442b687c6c51586cd833365c1276f44e0bfc1;hb=87952c7f7c263dd2f4155982a3079dd5c1848663;hpb=d702068457bc95d4e3ba05708516ce16ab206d68 diff --git a/include/loan.h b/include/loan.h index 847442b68..c4819cf65 100644 --- a/include/loan.h +++ b/include/loan.h @@ -1,11 +1,11 @@ /* * Empire - A multi-player, client/server Internet based war game. - * Copyright (C) 1986-2008, Dave Pare, Jeff Bailey, Thomas Ruschak, - * Ken Stevens, Steve McClure + * Copyright (C) 1986-2020, Dave Pare, Jeff Bailey, Thomas Ruschak, + * Ken Stevens, Steve McClure, Markus Armbruster * - * This program is free software; you can redistribute it and/or modify + * Empire is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, @@ -14,8 +14,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * along with this program. If not, see . * * --- * @@ -34,34 +33,34 @@ #ifndef LOAN_H #define LOAN_H -#include +#include "file.h" #include "types.h" -#define MAXLOAN 100000 +#define MAXLOAN 100000 #define SECS_PER_DAY (60*60*24) struct lonstr { /* initial part must match struct empobj */ - short ef_type; - short l_uid; - unsigned l_seqno; + signed ef_type: 8; + unsigned l_seqno: 12; + unsigned l_generation: 12; + int l_uid; time_t l_timestamp; /* end of part matching struct empobj */ natid l_loner; /* loan shark */ natid l_lonee; /* sucker */ signed char l_status; /* loan status */ - short l_sell; /* pointer to trade file (unused) */ int l_irate; /* interest rate */ int l_ldur; /* intended duration */ - long l_amtpaid; /* amount paid so far */ - long l_amtdue; /* amount still owed */ + int l_amtpaid; /* amount paid so far */ + int l_amtdue; /* amount still owed */ time_t l_lastpay; /* date of most recent payment */ time_t l_duedate; /* date after which interest doubles, etc */ }; -#define LS_FREE AGREE_FREE -#define LS_PROPOSED AGREE_PROPOSED -#define LS_SIGNED AGREE_SIGNED +#define LS_FREE 0 +#define LS_PROPOSED 1 +#define LS_SIGNED 2 extern double loan_owed(struct lonstr *loan, time_t paytime);