(svn r6153) -Codechange: DeleteSign removes a sign from the pool

-Codechange: DestroySign is called by DeleteSign to remove all things where a sign depends on.
  Last 2 changes to prepare for new pool system. Not pretty now, will be soon.
This commit is contained in:
truelight 2006-08-26 19:29:35 +00:00
parent 7e6f1f16c0
commit f25e5e90d2
2 changed files with 10 additions and 2 deletions

View File

@ -103,7 +103,13 @@ static Sign *AllocateSign(void)
return NULL;
}
/** Place a sign at the given coordinates. Ownership of sign has
void DestroySign(Sign *si)
{
DeleteName(si->str);
}
/**
* Place a sign at the given coordinates. Ownership of sign has
* no effect whatsoever except for the colour the sign gets for easy recognition,
* but everybody is able to rename/remove it.
* @param tile tile to place sign at

View File

@ -57,9 +57,11 @@ static inline bool IsValidSignID(uint index)
return index < GetSignPoolSize() && IsValidSign(GetSign(index));
}
void DestroySign(Sign *si);
static inline void DeleteSign(Sign *si)
{
DeleteName(si->str);
DestroySign(si);
si->str = STR_NULL;
}