/*
* Empire - A multi-player, client/server Internet based war game.
- * Copyright (C) 1986-2007, 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
* ---
*
* ship.c: Do production for ships
- *
+ *
* Known contributors to this file:
* Dave Pare, 1986
* Steve McClure, 1996
* Ron Koenderink, 2004
- * Markus Armbruster, 2006-2007
+ * Markus Armbruster, 2006-2008
*/
#include <config.h>
wf = 0;
/* only military can work on a military boat */
- if (ship->shp_glim > 0)
+ if (mp->m_glim != 0)
wf = etus * ship->shp_item[I_MILIT] / 2;
else
wf = etus * (ship->shp_item[I_CIVIL] / 2 + ship->shp_item[I_MILIT] / 5);
needed - sp->shp_item[I_FOOD]);
if (needed > sp->shp_item[I_FOOD]) {
/* take from embarked land units, but don't starve them */
- snxtitem_all(&ni, EF_LAND);
+ snxtitem_cargo(&ni, EF_LAND, EF_SHIP, sp->shp_uid);
while ((lp = nxtitemp(&ni)) && needed > sp->shp_item[I_FOOD]) {
- if (lp->lnd_ship != sp->shp_uid)
- continue;
give = lp->lnd_item[I_FOOD] - food_needed(lp->lnd_item, etus);
if (give < 1.0)
continue;