UniCurses на Python 3 под windows
Модераторы: Sanja, Максим Кич
Re: UniCurses на Python 3 под windows
Пишу в состоянии, отличном от трезвого, прошу извинить. если невнятно выражу мысль, завтра поправлю. Есть ли возможность в очистить очередь ввода в биарлибе? Потестил героя при радиусе видимости 20 - не понравилось...
- Jesus05
- Сообщения: 1840
- Зарегистрирован: 02 дек 2009, 07:50
- Откуда: Норильск, сейчас Санкт-петербург.
- Контактная информация:
Re: UniCurses на Python 3 под windows
Вообще игнорировать клавиши не очень корректно, и где-то мы тут это обсуждали(кажется в теме терминала). некоторая поочередность нажатых клавиш даже если игра повисла должна отрабатывать ровно как эта поочередность когда игра отвиснет.
Но могу тебе предложить 2 варианта:
1. пропустить все клавиши и считывать всегда только последнюю... реализуется через read и has_input делаем read пока has_input не вернет false тогда ты будешь иметь всегда последнюю нажатую кнопку.
2. пропускать одинаковые клавиши. делаешь 2 переменные в одну пишешь прошлую клавишу в другую текущую если одинаковы игнорируешь пока has_input не вернет false. (т.е. повторяющиеся клавиши обрабатываешь только если они последние)
Но могу тебе предложить 2 варианта:
1. пропустить все клавиши и считывать всегда только последнюю... реализуется через read и has_input делаем read пока has_input не вернет false тогда ты будешь иметь всегда последнюю нажатую кнопку.
2. пропускать одинаковые клавиши. делаешь 2 переменные в одну пишешь прошлую клавишу в другую текущую если одинаковы игнорируешь пока has_input не вернет false. (т.е. повторяющиеся клавиши обрабатываешь только если они последние)
Re: UniCurses на Python 3 под windows
Первый вариант, кажется, то, что надо, благодарю!
Re: UniCurses на Python 3 под windows
Что скажете насчет такой реализации? Пропали все тормоза даже когда дальность видимости выставил 100:
Скрытый текст: ПОКАЗАТЬ
- Jesus05
- Сообщения: 1840
- Зарегистрирован: 02 дек 2009, 07:50
- Откуда: Норильск, сейчас Санкт-петербург.
- Контактная информация:
Re: UniCurses на Python 3 под windows
Учитывая обсужденное ранее я бы начало заменил на:vapekreng писал(а):Что скажете насчет такой реализации? Пропали все тормоза даже когда дальность видимости выставил 100:Скрытый текст: ПОКАЗАТЬ
Код: Выделить всё
while True:
while True:
key = terminel.read()
if (key in keys):
break
if key == terminal.TK_CLOSE ......
Код: Выделить всё
while True:
key = GetKey(keys)
if isExitKey(key):
break;
CleanKeyQueue()
TestMap.move_mob(Hero, key)
...
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 39 гостей