(svn r2297) - CodeChange: server-check the next batch of commands.
- CodeChange: since only the server will be able to modify difficulty settings, leave the checking of correct values besides, and trust users will join legit servers.
- CodeChange: for renaming signs, only check if GetDParam(); eg _decode_parameters is empty ('\0') or not, instead of the extra check of players, etc. That basically does the same thing. Also dirty sign two times when renaming, once before, once after the action. Because if the name becomes shorter and you update only after, garbage remains on the screen.
- CodeChange: made GetMaskOfTownActions() available to the town-cmd to double-check if the action was available to the player. For this purpose the hardcoded _local_player has been removed from the function and is now passed as a parameter.
#define TILE_SEQ_BEGIN(x) { x, 0, 0, 0, 0 },
#define TILE_SEQ_LINE(a, b, c, d, e) { a, b, c, d, e },
#define TILE_SEQ_END() { 0, 0, 0, 0, 0 }
static const DrawRoadSeqStruct _road_display_datas_0[] = {
TILE_SEQ_BEGIN(0xA4A)
TILE_SEQ_LINE(0x8584, 0, 15, 16, 1)
TILE_SEQ_END()
};
static const DrawRoadSeqStruct _road_display_datas_1[] = {
TILE_SEQ_BEGIN(0xA4A)
TILE_SEQ_LINE(0x580, 0, 0, 1, 16)
TILE_SEQ_LINE(0x8581, 15, 0, 1, 16)
TILE_SEQ_END()
};
static const DrawRoadSeqStruct _road_display_datas_2[] = {
TILE_SEQ_BEGIN(0xA4A)
TILE_SEQ_LINE(0x582, 0, 0, 16, 1)
TILE_SEQ_LINE(0x8583, 0, 15, 16, 1)
TILE_SEQ_END()
};
static const DrawRoadSeqStruct _road_display_datas_3[] = {
TILE_SEQ_BEGIN(0xA4A)
TILE_SEQ_LINE(0x8585, 15, 0, 1, 16)
TILE_SEQ_END()
};
static const DrawRoadSeqStruct* const _road_display_datas[] = {
_road_display_datas_0,
_road_display_datas_1,
_road_display_datas_2,
_road_display_datas_3,
};
#undef TILE_SEQ_BEGIN
#undef TILE_SEQ_LINE
#undef TILE_SEQ_END
static const SpriteID _road_tile_sprites_1[16] = {
0, 0x546, 0x545, 0x53B, 0x544, 0x534, 0x53E, 0x539,
0x543, 0x53C, 0x535, 0x538, 0x53D, 0x537, 0x53A, 0x536
};
#define MAKELINE(a, b, c) { a, b, c },
#define ENDLINE { 0, 0, 0 }
static const DrawRoadTileStruct _road_display_datas2_0[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_1[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_2[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_3[] = {
MAKELINE(0x57f,1,8)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_4[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_5[] = {
MAKELINE(0x57f,1,8)
MAKELINE(0x57e,14,8)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_6[] = {
MAKELINE(0x57e,8,1)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_7[] = {
MAKELINE(0x57f,1,8)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_8[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_9[] = {
MAKELINE(0x57f,8,14)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_10[] = {
MAKELINE(0x57f,8,14)
MAKELINE(0x57e,8,1)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_11[] = {
MAKELINE(0x57f,8,14)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_12[] = {
MAKELINE(0x57e,8,1)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_13[] = {
MAKELINE(0x57e,14,8)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_14[] = {
MAKELINE(0x57e,8,1)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_15[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_16[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_17[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_18[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_19[] = {
MAKELINE(0x1212,0,2)
MAKELINE(0x1212,3,9)
MAKELINE(0x1212,10,12)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_20[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_21[] = {
MAKELINE(0x1212,0,2)
MAKELINE(0x1212,0,10)
MAKELINE(0x1212,12,2)
MAKELINE(0x1212,12,10)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_22[] = {
MAKELINE(0x1212,10,0)
MAKELINE(0x1212,3,3)
MAKELINE(0x1212,0,10)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_23[] = {
MAKELINE(0x1212,0,2)
MAKELINE(0x1212,0,10)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_24[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_25[] = {
MAKELINE(0x1212,12,2)
MAKELINE(0x1212,9,9)
MAKELINE(0x1212,2,12)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_26[] = {
MAKELINE(0x1212,2,0)
MAKELINE(0x1212,10,0)
MAKELINE(0x1212,2,12)
MAKELINE(0x1212,10,12)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_27[] = {
MAKELINE(0x1212,2,12)
MAKELINE(0x1212,10,12)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_28[] = {
MAKELINE(0x1212,2,0)
MAKELINE(0x1212,9,3)
MAKELINE(0x1212,12,10)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_29[] = {
MAKELINE(0x1212,12,2)
MAKELINE(0x1212,12,10)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_30[] = {
MAKELINE(0x1212,2,0)
MAKELINE(0x1212,10,0)
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_31[] = {
ENDLINE
};
static const DrawRoadTileStruct _road_display_datas2_32[] = {
ENDLINE
};
#undef MAKELINE
#undef ENDLINE
static const DrawRoadTileStruct* const _road_display_table_1[] = {
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
_road_display_datas2_32,_road_display_datas2_32,
};
static const DrawRoadTileStruct* const _road_display_table_2[] = {
_road_display_datas2_0,
_road_display_datas2_1,
_road_display_datas2_2,
_road_display_datas2_3,
_road_display_datas2_4,
_road_display_datas2_5,
_road_display_datas2_6,
_road_display_datas2_7,
_road_display_datas2_8,
_road_display_datas2_9,
_road_display_datas2_10,
_road_display_datas2_11,
_road_display_datas2_12,
_road_display_datas2_13,
_road_display_datas2_14,
_road_display_datas2_15,
};
static const DrawRoadTileStruct* const _road_display_table_3[] = {
_road_display_datas2_16,
_road_display_datas2_17,
_road_display_datas2_18,
_road_display_datas2_19,
_road_display_datas2_20,
_road_display_datas2_21,
_road_display_datas2_22,
_road_display_datas2_23,
_road_display_datas2_24,
_road_display_datas2_25,
_road_display_datas2_26,
_road_display_datas2_27,
_road_display_datas2_28,
_road_display_datas2_29,
_road_display_datas2_30,
_road_display_datas2_31,
};
static const DrawRoadTileStruct* const * const _road_display_table[] = {
_road_display_table_1,
_road_display_table_1,
_road_display_table_1,
_road_display_table_2,
_road_display_table_1,
_road_display_table_3,
};