mirror of https://github.com/OpenTTD/OpenTTD
Fix 8706dcd9: [Script] Byte-swap grfids to match normal expectations.
parent
580dd118cb
commit
b14681891d
|
@ -19,13 +19,15 @@ ScriptNewGRFList::ScriptNewGRFList()
|
||||||
{
|
{
|
||||||
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
||||||
if (!HasBit(c->flags, GCF_STATIC)) {
|
if (!HasBit(c->flags, GCF_STATIC)) {
|
||||||
this->AddItem(c->ident.grfid);
|
this->AddItem(BSWAP32(c->ident.grfid));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* static */ bool ScriptNewGRF::IsLoaded(uint32 grfid)
|
/* static */ bool ScriptNewGRF::IsLoaded(uint32 grfid)
|
||||||
{
|
{
|
||||||
|
grfid = BSWAP32(grfid); // Match people's expectations.
|
||||||
|
|
||||||
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
||||||
if (!HasBit(c->flags, GCF_STATIC) && c->ident.grfid == grfid) {
|
if (!HasBit(c->flags, GCF_STATIC) && c->ident.grfid == grfid) {
|
||||||
return true;
|
return true;
|
||||||
|
@ -37,6 +39,8 @@ ScriptNewGRFList::ScriptNewGRFList()
|
||||||
|
|
||||||
/* static */ uint32 ScriptNewGRF::GetVersion(uint32 grfid)
|
/* static */ uint32 ScriptNewGRF::GetVersion(uint32 grfid)
|
||||||
{
|
{
|
||||||
|
grfid = BSWAP32(grfid); // Match people's expectations.
|
||||||
|
|
||||||
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
||||||
if (!HasBit(c->flags, GCF_STATIC) && c->ident.grfid == grfid) {
|
if (!HasBit(c->flags, GCF_STATIC) && c->ident.grfid == grfid) {
|
||||||
return c->version;
|
return c->version;
|
||||||
|
@ -48,6 +52,8 @@ ScriptNewGRFList::ScriptNewGRFList()
|
||||||
|
|
||||||
/* static */ char *ScriptNewGRF::GetName(uint32 grfid)
|
/* static */ char *ScriptNewGRF::GetName(uint32 grfid)
|
||||||
{
|
{
|
||||||
|
grfid = BSWAP32(grfid); // Match people's expectations.
|
||||||
|
|
||||||
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
for (auto c = _grfconfig; c != nullptr; c = c->next) {
|
||||||
if (!HasBit(c->flags, GCF_STATIC) && c->ident.grfid == grfid) {
|
if (!HasBit(c->flags, GCF_STATIC) && c->ident.grfid == grfid) {
|
||||||
return ::stredup(c->GetName());
|
return ::stredup(c->GetName());
|
||||||
|
|
|
@ -45,7 +45,7 @@ public:
|
||||||
static uint32 GetVersion(uint32 grfid);
|
static uint32 GetVersion(uint32 grfid);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the BridgeID of a bridge at a given tile.
|
* Get the name of a loaded NewGRF.
|
||||||
* @param grfid The NewGRF to query.
|
* @param grfid The NewGRF to query.
|
||||||
* @pre ScriptNewGRF::IsLoaded(grfid).
|
* @pre ScriptNewGRF::IsLoaded(grfid).
|
||||||
* @return The name of the NewGRF or nullptr if no name is defined.
|
* @return The name of the NewGRF or nullptr if no name is defined.
|
||||||
|
|
Loading…
Reference in New Issue