forked from Mirrors/openclonk
making buying in flagpole work when flag is in non-nil object layer
parent
5471fe6cff
commit
3c267bb7dc
|
@ -34,7 +34,7 @@ static const BASEMATERIAL_ProductionRate = 2160;
|
|||
|
||||
global func GetBaseMaterial(int plr, id def, int index, int category)
|
||||
{
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_Owner(plr));
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_AnyLayer(), Find_Owner(plr));
|
||||
if (!base)
|
||||
base = CreateObjectAbove(BaseMaterial, AbsX(10), AbsY(10), plr);
|
||||
if (base)
|
||||
|
@ -43,7 +43,7 @@ global func GetBaseMaterial(int plr, id def, int index, int category)
|
|||
|
||||
global func SetBaseMaterial(int plr, id def, int cnt)
|
||||
{
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_Owner(plr));
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_AnyLayer(), Find_Owner(plr));
|
||||
if (!base)
|
||||
base = CreateObjectAbove(BaseMaterial, AbsX(10), AbsY(10), plr);
|
||||
if (base)
|
||||
|
@ -52,7 +52,7 @@ global func SetBaseMaterial(int plr, id def, int cnt)
|
|||
|
||||
global func DoBaseMaterial(int plr, id def, int change)
|
||||
{
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_Owner(plr));
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_AnyLayer(), Find_Owner(plr));
|
||||
if (!base)
|
||||
base = CreateObjectAbove(BaseMaterial, AbsX(10), AbsY(10), plr);
|
||||
if (base)
|
||||
|
@ -61,7 +61,7 @@ global func DoBaseMaterial(int plr, id def, int change)
|
|||
|
||||
global func GetBaseProduction(int plr, id def, int index, int category)
|
||||
{
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_Owner(plr));
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_AnyLayer(), Find_Owner(plr));
|
||||
if (!base)
|
||||
base = CreateObjectAbove(BaseMaterial, AbsX(10), AbsY(10), plr);
|
||||
if (base)
|
||||
|
@ -70,7 +70,7 @@ global func GetBaseProduction(int plr, id def, int index, int category)
|
|||
|
||||
global func SetBaseProduction(int plr, id def, int cnt)
|
||||
{
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_Owner(plr));
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_AnyLayer(), Find_Owner(plr));
|
||||
if (!base)
|
||||
base = CreateObjectAbove(BaseMaterial, AbsX(10), AbsY(10), plr);
|
||||
if (base)
|
||||
|
@ -79,7 +79,7 @@ global func SetBaseProduction(int plr, id def, int cnt)
|
|||
|
||||
global func DoBaseProduction(int plr, id def, int change)
|
||||
{
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_Owner(plr));
|
||||
var base = FindObject(Find_ID(BaseMaterial), Find_AnyLayer(), Find_Owner(plr));
|
||||
if (!base)
|
||||
base = CreateObjectAbove(BaseMaterial, AbsX(10), AbsY(10), plr);
|
||||
if (base)
|
||||
|
|
|
@ -209,7 +209,7 @@ func GetBuyMenuEntry(int index, id item, int amount, int value)
|
|||
// ----- buying
|
||||
|
||||
public func GetBuyMenuEntries(object clonk)
|
||||
{
|
||||
{
|
||||
// We need to know when exactly we should refresh the menu to prevent unecessary refreshs.
|
||||
var lowest_greyed_out_price = nil;
|
||||
|
||||
|
@ -257,7 +257,6 @@ public func GetBuyMenuEntries(object clonk)
|
|||
fx.last_wealth = wealth;
|
||||
fx.wealth_player = wealth_player;
|
||||
PushBack(menu_entries, {symbol = nil, extra_data = nil, custom = entry, fx = fx});
|
||||
|
||||
return menu_entries;
|
||||
}
|
||||
|
||||
|
|
|
@ -41,7 +41,7 @@ public func NoConstructionFlip() { return true; }
|
|||
public func IsContainer() { return true; }
|
||||
|
||||
// Allow buying only if the rule is active
|
||||
public func AllowBuyMenuEntries(){ return ObjectCount(Find_ID(Rule_BuyAtFlagpole));}
|
||||
public func AllowBuyMenuEntries(){ return ObjectCount(Find_ID(Rule_BuyAtFlagpole), Find_AnyLayer());}
|
||||
|
||||
public func RejectCollect(id def, object obj)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue