Salfer Опубликовано 26 мая, 2014 Жалоба Поделиться Опубликовано 26 мая, 2014 Этот кусок кода отвечает за онлайн.Вопрос:Как изменить отображение цифирных полных значений на текстовые?Пример:users = 0Отображает в игре "Игроков нет".int count_users(void){int i, users;users = 0;for(i = 0; i < ARRAYLENGTH(server); i++) { if (server[i].fd > 0) { users += server[i].users; }}return users;} Ссылка на комментарий Поделиться на другие сайты Поделиться
botka4aet Опубликовано 26 мая, 2014 Жалоба Поделиться Опубликовано 26 мая, 2014 Этот возвращает онлайн, а не отображение Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 26 мая, 2014 Автор Жалоба Поделиться Опубликовано 26 мая, 2014 (изменено) напишиusers = 1;users += 100+server.users;и посмотри)значение онлайна изменится, это точно.(я проверял) Изменено 26 мая, 2014 пользователем Salfer Ссылка на комментарий Поделиться на другие сайты Поделиться
Кеник Опубликовано 27 мая, 2014 Жалоба Поделиться Опубликовано 27 мая, 2014 Этот кусок кода отвечает за онлайн.Вопрос:Как изменить отображение цифирных полных значений на текстовые?Пример:users = 0Отображает в игре "Игроков нет".int count_users(void){int i, users;users = 0;for(i = 0; i < ARRAYLENGTH(server); i++) {if (server[i].fd > 0) {users += server[i].users;}}return users;}Этот кусок кода отвечает за подсчет онлайна. Тебе нужен кусок кода, где эта функция вызывается и по её результатам уже выводится в чат надпись. Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 27 мая, 2014 Жалоба Поделиться Опубликовано 27 мая, 2014 Вопрос:Как изменить отображение цифирных полных значений на текстовые?Отображение в каком месте? При каких действиях?Для начала выложите скрин места вывода онлайна. Ссылка на комментарий Поделиться на другие сайты Поделиться
Salfer Опубликовано 27 мая, 2014 Автор Жалоба Поделиться Опубликовано 27 мая, 2014 (изменено) int count_users(void){int i, users;users = 150;for(i = 0; i < ARRAYLENGTH(server); i++) {if (server[i].fd > 0) {users += 400*server[i].users;}}return users;} я в users += писал букву, но тогда вместо неё в клиенте появлялось аж 5-и значное значение онлайна. я понимаю что int отвечает на целое численное значение, а char за буквенное, но я не могу сообразить как. Изменено 27 мая, 2014 пользователем Salfer Ссылка на комментарий Поделиться на другие сайты Поделиться
botka4aet Опубликовано 27 мая, 2014 Жалоба Поделиться Опубликовано 27 мая, 2014 (изменено) int count_users(void){int i, users;users = 150;for(i = 0; i < ARRAYLENGTH(server); i++) {if (server[i].fd > 0) {users += 400*server[i].users;}}return users;} я в users += писал букву, но тогда вместо неё в клиенте появлялось аж 5-и значное значение онлайна. я понимаю что int отвечает на целое численное значение, а char за буквенное, но я не могу сообразить как. int broadcast_user_count(int tid, unsigned int tick, int id, intptr_t data){uint8 buf[6];int users = count_users();// only send an update when neededstatic int prev_users = 0;if( prev_users == users ) return 0;prev_users = users;if( loginif_isconnected() ){ // send number of user to login server WFIFOHEAD(login_fd,6); WFIFOW(login_fd,0) = 0x2714; WFIFOL(login_fd,2) = users; WFIFOSET(login_fd,6);}// send number of players to all map-serversWBUFW(buf,0) = 0x2b00;WBUFL(buf,2) = users;mapif_sendall(buf,6);return 0;} Изменено 27 мая, 2014 пользователем botka4aet Ссылка на комментарий Поделиться на другие сайты Поделиться
Functor Опубликовано 27 мая, 2014 Жалоба Поделиться Опубликовано 27 мая, 2014 Логин сервер после успешной аутентификации игрока отправляет клиенту список чар серверов с их онлайном. На количество игроков выделено два байта. За формат отображения отвечает клиент, а не сервер. Вместе с онлайном передается название char сервера(надпись eAthena на скрине). Под которое выделено 20 байт. Можно динамически генерировать его в нужном формате. А стандартное отображение онлайна(550) отключить хексом. Но делать столько телодвижений, чтобы при 0 онлайне показать надпись "Игроков нет" нецелесообразно. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения