forked from Mirrors/openclonk
producer does not depend on partial fuel amounts
parent
d19f75a5b9
commit
23accab0de
|
@ -14,7 +14,12 @@ protected func Hit(x, y)
|
|||
}
|
||||
|
||||
public func IsFuel() { return true; }
|
||||
public func GetFuelAmount() { return GetCon(); }
|
||||
public func GetFuelAmount(bool get_partial)
|
||||
{
|
||||
if (get_partial)
|
||||
return GetCon();
|
||||
return 100;
|
||||
}
|
||||
|
||||
local Collectible = 1;
|
||||
local Name = "$Name$";
|
||||
|
|
|
@ -113,7 +113,7 @@ private func FindNearWater()
|
|||
/*-- Status --*/
|
||||
|
||||
public func IsFuel() { return !wetness; }
|
||||
public func GetFuelAmount() { return 100; }
|
||||
public func GetFuelAmount(bool get_partial) { return 100; }
|
||||
|
||||
local Collectible = 1;
|
||||
local Name = "$Name$";
|
||||
|
|
|
@ -8,11 +8,16 @@ protected func Hit()
|
|||
|
||||
func Incineration()
|
||||
{
|
||||
SetClrModulation (RGB(48, 32, 32));
|
||||
SetClrModulation(RGB(48, 32, 32));
|
||||
}
|
||||
|
||||
public func IsFuel() { return true; }
|
||||
public func GetFuelAmount() { return 50; }
|
||||
public func GetFuelAmount(bool get_partial)
|
||||
{
|
||||
if (get_partial)
|
||||
return GetCon() / 2;
|
||||
return 50;
|
||||
}
|
||||
public func IsSawmillProduct() { return true; }
|
||||
|
||||
local Collectible = 1;
|
||||
|
|
|
@ -12,7 +12,7 @@ func Incineration()
|
|||
}
|
||||
|
||||
public func IsFuel() { return true; }
|
||||
public func GetFuelAmount() { return 30; }
|
||||
public func GetFuelAmount(bool get_partial) { return 30; }
|
||||
|
||||
// Main bridge object is saved
|
||||
func SaveScenarioObject() { return false; }
|
||||
|
|
|
@ -411,7 +411,7 @@ public func CheckFuel(id product, bool remove)
|
|||
var fuel_amount = 0;
|
||||
// Find fuel in this producer.
|
||||
for (var fuel in FindObjects(Find_Container(this), Find_Func("IsFuel")))
|
||||
fuel_amount += fuel->~GetFuelAmount();
|
||||
fuel_amount += fuel->~GetFuelAmount(false);
|
||||
if (fuel_amount < FuelNeed(product))
|
||||
return false;
|
||||
else if (remove)
|
||||
|
@ -420,7 +420,7 @@ public func CheckFuel(id product, bool remove)
|
|||
fuel_amount = 0;
|
||||
for (var fuel in FindObjects(Find_Container(this), Find_Func("IsFuel")))
|
||||
{
|
||||
fuel_amount += fuel->~GetFuelAmount();
|
||||
fuel_amount += fuel->~GetFuelAmount(false);
|
||||
fuel->RemoveObject();
|
||||
if (fuel_amount >= FuelNeed(product))
|
||||
break;
|
||||
|
|
|
@ -91,7 +91,7 @@ public func OnPowerProductionStart(int amount)
|
|||
if (!fuel)
|
||||
return false;
|
||||
// Extract the fuel amount from the new piece of fuel.
|
||||
fuel_amount += fuel->~GetFuelAmount() * 18;
|
||||
fuel_amount += fuel->~GetFuelAmount(true) * 18;
|
||||
fuel->RemoveObject();
|
||||
}
|
||||
// There is enough fuel so start producing power and notify network of this.
|
||||
|
@ -134,7 +134,7 @@ protected func Working()
|
|||
return;
|
||||
}
|
||||
// Extract the fuel amount from the new piece of fuel.
|
||||
fuel_amount += fuel->~GetFuelAmount() * 18;
|
||||
fuel_amount += fuel->~GetFuelAmount(true) * 18;
|
||||
fuel->RemoveObject();
|
||||
}
|
||||
// Smoke from the exhaust shaft.
|
||||
|
|
Loading…
Reference in New Issue