44 return &_object_specs[index];
102 MemCpyT(_object_specs, _original_objects,
lengthof(_original_objects));
104 for (uint16 i = 0; i <
lengthof(_original_objects); i++) {
109 template <
typename Tspec,
typename T
id, T
id Tmax>
117 cls = ObjectClass::Allocate(
'TRNS');
123 template <
typename Tspec,
typename T
id, T
id Tmax>
126 return this->GetSpec(index)->IsEverAvailable();
188 uint32 best_dist = UINT32_MAX;
191 if (o->
type != type || o == current)
continue;
238 const Town *t = NULL;
240 if (this->
obj == NULL) {
258 case 0x42:
return _date;
264 case 0x48:
return this->
view;
287 uint offset_x =
TileX(offset);
288 uint offset_y =
TileY(offset);
289 return offset_y << 20 | offset_x << 16 | offset_y << 8 | offset_x;
314 case 0x48:
return this->
obj->
view;
339 DEBUG(grf, 1,
"Unhandled object variable 0x%X", variable);
355 CallbackID callback, uint32 param1, uint32 param2)
356 :
ResolverObject(spec->grf_prop.grffile, callback, param1, param2), object_scope(*this, obj, tile, view)
363 ObjectResolverObject::~ObjectResolverObject()
382 if (t == NULL)
return NULL;
402 return object.ResolveCallback();
423 DrawWaterClassGround(ti);
443 if (group == NULL || group->type != SGT_TILELAYOUT)
return;
459 if (group == NULL || group->type != SGT_TILELAYOUT)
return;