|
|
/* $Id$ */
|
|
|
|
|
|
/** @file newgrf_townname.cpp
|
|
|
* Implementation of Action 0F "universal holder" structure and functions.
|
|
|
* This file implements a linked-lists of townname generators,
|
|
|
* holding everything that the newgrf action 0F will send over to OpenTTD.
|
|
|
*/
|
|
|
|
|
|
#include "stdafx.h"
|
|
|
#include "openttd.h"
|
|
|
#include "newgrf_townname.h"
|
|
|
#include "core/alloc_func.hpp"
|
|
|
#include "string_func.h"
|
|
|
|
|
|
#include "table/strings.h"
|
|
|
|
|
|
static GRFTownName *_grf_townnames = NULL;
|
|
|
|
|
|
GRFTownName *GetGRFTownName(uint32 grfid)
|
|
|
{
|
|
|
GRFTownName *t = _grf_townnames;
|
|
|
for (; t != NULL; t = t->next) {
|
|
|
if (t->grfid == grfid) return t;
|
|
|
}
|
|
|
return NULL;
|
|
|
}
|
|
|
|
|
|
GRFTownName *AddGRFTownName(uint32 grfid)
|
|
|
{
|
|
|
GRFTownName *t = GetGRFTownName(grfid);
|
|
|
if (t == NULL) {
|
|
|
t = CallocT<GRFTownName>(1);
|
|
|
t->grfid = grfid;
|
|
|
t->next = _grf_townnames;
|
|
|
_grf_townnames = t;
|
|
|
}
|
|
|
return t;
|
|
|
}
|
|
|
|
|
|
void DelGRFTownName(uint32 grfid)
|