forked from mirror/OpenTTD
(svn r1023) -Fix: [Network] [ 1083692 ] You can no longer buy out a company in MP
because of the lag between commands (anyway, I hope)
This commit is contained in:
@@ -443,7 +443,7 @@ static void DrawPlayerVehiclesAmount(int player)
|
||||
}
|
||||
}
|
||||
|
||||
static int GetAmountOwnedBy(Player *p, byte owner)
|
||||
int GetAmountOwnedBy(Player *p, byte owner)
|
||||
{
|
||||
return (p->share_owners[0] == owner) +
|
||||
(p->share_owners[1] == owner) +
|
||||
@@ -489,10 +489,10 @@ static void PlayerCompanyWndProc(Window *w, WindowEvent *e)
|
||||
SetDParam(2, GetPlayerNameString((byte)w->window_number, 3));
|
||||
|
||||
dis = 0;
|
||||
if (GetAmountOwnedBy(p, 0xFF) == 0) dis |= 1 << 9;
|
||||
if (GetAmountOwnedBy(p, OWNER_SPECTATOR) == 0) dis |= 1 << 9;
|
||||
// Also disable the buy button if 25% is not-owned by someone
|
||||
// and the player is not an AI
|
||||
if (GetAmountOwnedBy(p, 0xFF) == 1 && !p->is_ai) dis |= 1 << 9;
|
||||
if (GetAmountOwnedBy(p, OWNER_SPECTATOR) == 1 && !p->is_ai) dis |= 1 << 9;
|
||||
if (GetAmountOwnedBy(p, _local_player) == 0) dis |= 1 << 10;
|
||||
|
||||
w->disabled_state = dis;
|
||||
|
Reference in New Issue
Block a user