truelight@988: #ifndef SIGNS_H truelight@988: #define SIGNS_H truelight@988: truelight@988: typedef struct SignStruct { truelight@988: StringID str; truelight@988: ViewportSign sign; truelight@988: int32 x; truelight@988: int32 y; truelight@988: byte z; dominik@1165: byte owner; // placed by this player. Anyone can delete them though. dominik@1165: // OWNER_NONE for gray signs from old games. truelight@988: truelight@988: uint16 index; truelight@988: } SignStruct; truelight@988: truelight@988: VARDEF SignStruct _sign_list[40]; truelight@988: VARDEF uint _sign_size; truelight@988: truelight@988: static inline SignStruct *GetSign(uint index) truelight@988: { truelight@988: assert(index < _sign_size); truelight@988: return &_sign_list[index]; truelight@988: } truelight@988: truelight@988: #define FOR_ALL_SIGNS(s) for(s = _sign_list; s != &_sign_list[_sign_size]; s++) truelight@988: truelight@988: VARDEF SignStruct *_new_sign_struct; truelight@988: tron@1093: void UpdateAllSignVirtCoords(void); truelight@988: void PlaceProc_Sign(uint tile); truelight@988: truelight@988: /* misc.c */ truelight@988: void ShowRenameSignWindow(SignStruct *ss); truelight@988: truelight@988: #endif /* SIGNS_H */