# HG changeset patch # User tron # Date 1123950187 0 # Node ID 48ace1344af03e8f5684d134838fc3409e8934a7 # Parent 1222aa57deb71be51868ac30cffe49c245ca981e (svn r2862) Return a proper version number, when testing the TTDPatch version in the SkipIf action. Pretend to be version 2.0.1 alpha 49 for now. Also change the type of the variables, which get compared, to uint32, because the values are at most 32bits wide and always seem to be unsigned. diff -r 1222aa57deb7 -r 48ace1344af0 newgrf.c --- a/newgrf.c Fri Aug 12 12:47:35 2005 +0000 +++ b/newgrf.c Sat Aug 13 16:23:07 2005 +0000 @@ -1692,7 +1692,8 @@ uint8 paramsize; uint8 condtype; uint8 numsprites; - int param_val = 0, cond_val = 0; + uint32 param_val = 0; + uint32 cond_val = 0; bool result; check_length(len, 6, "SkipIf"); @@ -1730,9 +1731,16 @@ case 0x88: { /* see if specified GRFID is active */ param_val = (GetFileByGRFID(cond_val) != NULL); } break; - case 0x8B: /* TTDPatch version */ - param_val = 0xFFFF; + + case 0x8B: { /* TTDPatch version */ + uint major = 2; + uint minor = 0; + uint revision = 10; // special case: 2.0.1 is 2.0.10 + uint build = 49; + param_val = (major << 24) | (minor << 20) | (revision << 16) | (build * 10); break; + } + case 0x8D: /* TTD Version, 00=DOS, 01=Windows */ param_val = 1; break;