|
2D-программирование Вопросы, касающиеся двумерного программирования |
24.07.2007, 15:27
|
#1
|
Разработчик
Регистрация: 02.04.2007
Сообщений: 353
Написано 54 полезных сообщений (для 289 пользователей)
|
Shift+up
как сделать нажатие двух клавишь одновременно , например для "красться" или для переключиться в бег (когда нажата кнопка "up" и вдруг надо срочно ускориться , жму на "шифт" но эффекта нет. Пробовал так : if keydown () and keydown() then действие
и еще пробовал так: красться=keydown ()+keydown ()
if красться=2 then действие вобщем почемуто не получилось , очень нужно . Заранее спасибо!
|
(Offline)
|
|
24.07.2007, 15:54
|
#2
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Shift+up
Кнопки привязывай к переменным.
В начале цикла:
IKdSft=KeyDown(...)
IKdUp=KeyDown(...)
If IKdSft+IKdUp=2
Endif
|
(Offline)
|
|
26.07.2007, 15:25
|
#3
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Shift+up
if keydown("UP")
if keydown("SHIFT")
.......
endif
endif
|
(Offline)
|
|
26.07.2007, 15:37
|
#4
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Shift+up
IGR
А если кнопка используеться много раз в цикле? Привязка наилучший способ. Всё в чистоте и порядке тогда будет.
А при твоей раскладке, будут неправильные обновления, это как если сделать сперва проверку на координаты, а только потом нажата ли мышка, тогда будет баг, что если нажать вне координат кнопки, затем навести, она нажмёться. Вот такие пироги
|
(Offline)
|
|
26.07.2007, 19:05
|
#5
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Shift+up
ну да Ты прав !!
но я так делал и нечё !!
|
(Offline)
|
|
26.07.2007, 19:36
|
#6
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Shift+up
IGR
Может быть и ничего. но всякое бывает, потом будет чего
Лучше изначально стиль кодинга развивать, чтобы потом себя на ошибках не ловить.
|
(Offline)
|
|
03.08.2007, 01:37
|
#7
|
Танчики Developer
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений (для 23 пользователей)
|
Re: Shift+up
MoKa, попробую доказать что твой стиль тормознее чем силь ИГРа
ты вначале цилка проверяешь все кнопки.
в коде не могут 2 раза в цикле проверяться нажатие одной кнопки(если у кодера конечно руки прямые). ведь для каждой кнопки 1 действие. могут быть конечно разные части игры и в них кнопка выполняет раные действия. но части игры то разные и повтора проверки нажатия кнопки не будет.
и получается если допустим в игре используется 10 разных кнопок, то в твоем случае 10 проверок каждый цикл. а в случае ИГРа может быть и меньше проверок. например 8 в игре. а еще 2 в меню.
вот такая вот арифметика))
|
(Offline)
|
|
03.08.2007, 10:07
|
#8
|
|
Re: Shift+up
Leito
то что дал MoKa более работоспособное чем то что предложил IGR
потому что ето намного удобнее для последуйшей реализации изменения управления
притом надо систематизировать где ты читаеш клавиши, и не разбрасывать по коду
и функции keydown \ keyhit ето простое обращение к внутренему масиву
|
|
|
03.08.2007, 11:38
|
#9
|
Легенда
Регистрация: 01.10.2006
Сообщений: 3,705
Написано 296 полезных сообщений (для 568 пользователей)
|
Re: Shift+up
Такая систематизация только лишние ресурсы хавает. А эффект тот же. Тут от прогера зависит в общем. Как удобней - так и будет.
|
(Offline)
|
|
03.08.2007, 11:47
|
#10
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: Shift+up
Тут от прогера зависит в общем. Как удобней - так и будет.
|
а ещо зависит от предназначения кода !! в каждой ситуации есть свой оптимальный вариант !!
|
(Offline)
|
|
03.08.2007, 15:06
|
#11
|
|
Re: Shift+up
JohnK
ничего она не хавает
два if хавают больше чем два keyhit
притом народ не туда смотрите ... тут нету никаких принципиальных оптимизаций
вот критические оптимизации когда векторые расчеты идут ... вот там надо смотреть что быстрее
|
|
|
03.08.2007, 15:22
|
#12
|
Танчики Developer
Регистрация: 29.01.2007
Сообщений: 539
Написано 16 полезных сообщений (для 23 пользователей)
|
Re: Shift+up
jimon
зато лишнии затрааты оперативной памяти
4*кол-во кнопок - байт.
на глобальные переменные
|
(Offline)
|
|
03.08.2007, 16:01
|
#13
|
|
Re: Shift+up
Leito
ну если руки из правильного места растут то 1*кол_кнопок байт
так короче не холиварим, такие оптимизации до лампочки в конечном продукте
|
|
|
03.08.2007, 16:18
|
#14
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Re: Shift+up
jimon
зато лишнии затрааты оперативной памяти
4*кол-во кнопок - байт.
на глобальные переменные
|
опаньки - руки не из жопаньки:
INT(кол-во_кнопок/8.0) - байт
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
03.08.2007, 16:36
|
#15
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: Shift+up
Что вы заварили кашу =)
Я просто высказал своё мнение, т.к. расчитываю наперёд, что будет удобнее и т.п.
Да и Johnk, теперь возьми такой код:
If MouseX()>100
If MouseX()<150
If MouseY()>100
If MouseY()<150
If MouseHit(1)
RuntimeError "Hited"
Endif
EndIf
Endif
EndIf
EndIf
И вот этот код:
mX=MouseX()
mY=MouseY()
IMh1=MouseHit(1)
If mX>100
If mX<150
If mY>100
If mY<150
If IMh1
RuntimeError "Hited"
EndIf
EndIf
EndIf
EndIf
EndIf
И скажи, что лучше, что быстрее? И что удобнее?
И сразу скажу, в 1 варрианте, если нажать не в зоне, а потом навести, тогда будет нажата, в во 2 варрианте такого бага не будет.
И вообще заканчиваем оффтоп
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Похожие темы
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Игра Shift v1.1.0 |
mrsandy |
Проекты на MidletPascal |
2 |
18.02.2011 13:12 |
Часовой пояс GMT +4, время: 10:05.
|