… | |
… | |
161 | bool ACC (RW, extcmd); // call into extensions/plugins |
161 | bool ACC (RW, extcmd); // call into extensions/plugins |
162 | bool ACC (RW, extmap); // extend map comamnd with extra data |
162 | bool ACC (RW, extmap); // extend map comamnd with extra data |
163 | bool ACC (RW, buggy_mapscroll); // client crashes on large mapscrolls |
163 | bool ACC (RW, buggy_mapscroll); // client crashes on large mapscrolls |
164 | bool ACC (RW, darkness); /* True if client wants darkness information */ |
164 | bool ACC (RW, darkness); /* True if client wants darkness information */ |
165 | bool ACC (RW, image2); /* Client wants image2/face2 commands */ |
165 | bool ACC (RW, image2); /* Client wants image2/face2 commands */ |
166 | bool ACC (RW, fxix); // client implements fx and ix (face|image extended) commands |
166 | uint8_t ACC (RW, fxix); // client implements fx and ix (face|image extended) commands |
167 | bool ACC (RW, update_look); /* If true, we need to send the look window */ |
167 | bool ACC (RW, update_look); /* If true, we need to send the look window */ |
168 | bool ACC (RW, has_readable_type); /* If true client accept additional text information */ |
168 | bool ACC (RW, has_readable_type); /* If true client accept additional text information */ |
169 | /* used to arrange text in books, scrolls, or scripted dialogs */ |
169 | /* used to arrange text in books, scrolls, or scripted dialogs */ |
170 | bool ACC (RW, monitor_spells); /* Client wishes to be informed when their spell list changes */ |
170 | bool ACC (RW, monitor_spells); /* Client wishes to be informed when their spell list changes */ |
171 | bool ACC (RW, ext_mapinfos); /* If true client accepts additional info on maps */ |
171 | bool ACC (RW, ext_mapinfos); /* If true client accepts additional info on maps */ |
… | |
… | |
197 | int ACC (RW, rate_avail); // current rate balance |
197 | int ACC (RW, rate_avail); // current rate balance |
198 | int ACC (RW, max_rate); // max. # of bytes to send per tick |
198 | int ACC (RW, max_rate); // max. # of bytes to send per tick |
199 | faceidx ACC (RW, scrub_idx); // which face to send next |
199 | faceidx ACC (RW, scrub_idx); // which face to send next |
200 | int ACC (RW, bg_scrub); // how many ticks till the next background face send |
200 | int ACC (RW, bg_scrub); // how many ticks till the next background face send |
201 | |
201 | |
202 | faceidx partial_face; |
202 | struct ixsend { |
203 | uint32 partial_face_ofs; // if != 0, need to send remaining bytes of partial_face |
203 | int16_t pri; // unused |
204 | std::vector<faceidx, slice_allocator<faceidx> > askface; // which faces have been requested by the client |
204 | faceidx idx; |
|
|
205 | uint32_t ofs; // if != 0, need to send remaining bytes of partial_face |
|
|
206 | }; |
|
|
207 | std::vector<ixsend, slice_allocator<ixsend> > ixface; // which faces to send to the client using ix |
205 | |
208 | |
206 | std::vector<faceidx, slice_allocator<faceidx> > fxface; // which faces to send using fx |
209 | std::vector<faceidx, slice_allocator<faceidx> > fxface; // which faces to send using fx |
207 | MTH void flush_fx (); // send fx if required |
210 | MTH void flush_fx (); // send fx if required |
208 | |
211 | |
209 | void do_destroy (); |
212 | void do_destroy (); |
210 | void gather_callbacks (AV *&callbacks, event_type event) const; |
213 | void gather_callbacks (AV *&callbacks, event_type event) const; |
211 | |
214 | |
… | |
… | |
314 | #define PNG_FACE_INDEX 0 |
317 | #define PNG_FACE_INDEX 0 |
315 | |
318 | |
316 | #define VERSION_CS 1023 /* version >= 1023 understand setup cmd */ |
319 | #define VERSION_CS 1023 /* version >= 1023 understand setup cmd */ |
317 | #define VERSION_SC 1026 |
320 | #define VERSION_SC 1026 |
318 | //#define VERSION_SC 1027 // requestinfo image_info and image_sums, makes extending faces on the fly impossible |
321 | //#define VERSION_SC 1027 // requestinfo image_info and image_sums, makes extending faces on the fly impossible |
319 | #define VERSION_INFO "Crossfire+ Server" |
322 | #define VERSION_INFO "Crossfire TRT Server" |
320 | |
323 | |
321 | typedef object_vector<client, &client::active> sockvec; |
324 | typedef object_vector<client, &client::active> sockvec; |
322 | |
325 | |
323 | extern sockvec clients; |
326 | extern sockvec clients; |
324 | |
327 | |