Задержка перед выстрелом
|
|
Optimus | Дата: Суббота, 08 Мая 2010, 10:41 | Сообщение # 1 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Не получается сделать нормально. Играл с таймерами. Либо после первой пули больше не стреляет, либо стреляет без задержки, но чуть чуть тормозится вся игра(ограничение fps как я понял). Подумываю о засекании времени от времени выстрела. Однако немало памяти займет, я думаю. Может быть Полегче способ есть, как думаете.
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
maxturbo | Дата: Суббота, 08 Мая 2010, 11:35 | Сообщение # 2 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| Есть полегче, но если полазиешь по форуму то здесь не однократно создавалась эта тема, и был на нее ответ!!!
|
|
| |
maxturbo | Дата: Суббота, 08 Мая 2010, 11:48 | Сообщение # 3 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| http://igrostroenie.ru/forum/3-316-1 вот тебе ссылка...читай одиннадцатый пост
|
|
| |
maxturbo | Дата: Суббота, 08 Мая 2010, 12:03 | Сообщение # 4 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| а вот собственно сама задержка If keydown(...) If millisecs()>time+1000 If millisecs() Тут твой код выстрела... Endif Endif Пардон что не выделил код так как пишу с телефона :-)
|
|
| |
Optimus | Дата: Суббота, 08 Мая 2010, 12:53 | Сообщение # 5 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| отвечаю на все посты по порядку. 1-у меня поиск не работает, я с телефона. 2-спасибо за ссылку.3-а чем является time? Time=millisecs? Я тоже с телефона:)
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
maxturbo | Дата: Суббота, 08 Мая 2010, 13:49 | Сообщение # 6 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| да :-)
|
|
| |
Optimus | Дата: Суббота, 08 Мая 2010, 16:16 | Сообщение # 7 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Ты мне интересный код предложил. Если ставить time=millisecs() в глобальных то он не дает мне стрелять 1000 милисекунд с начала игры. Если поставить в функции стрельбы, то условие всегда будет ложно. Все циклично обновляется
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Draw | Дата: Суббота, 08 Мая 2010, 16:53 | Сообщение # 8 |
![Draw](http://www.igrostroenie.ru/avatar/72/719085.jpg) Продвинутый
Группа: Участники
Сообщений: 194
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Команда: DeforShys
Проектов: 8 (2 активных 6 инактив)
| все очень просто Code if keydown(..) .. if millicesc()>shotdelay+1000 shotdelay=millicesc() .. endif endif shotdelay я написал так что б чуть в тему шло и у нубпрогеров это не собьет другие time
ICQ 557709132 пиши. Отвечу на любой вопрос по блицу
|
|
| |
Optimus | Дата: Суббота, 08 Мая 2010, 17:22 | Сообщение # 9 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| твой код ни чем почти не отличается от предыдущего. Либо не стреляет, либо стреляет без перерыва
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Draw | Дата: Суббота, 08 Мая 2010, 17:48 | Сообщение # 10 |
![Draw](http://www.igrostroenie.ru/avatar/72/719085.jpg) Продвинутый
Группа: Участники
Сообщений: 194
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Команда: DeforShys
Проектов: 8 (2 активных 6 инактив)
| значит у тебя это написано как будто в типе и перечесляется несколько раз либо убери нагрузку на millisecs() функцию дай код цикла я исправлю
ICQ 557709132 пиши. Отвечу на любой вопрос по блицу
|
|
| |
Optimus | Дата: Суббота, 08 Мая 2010, 17:57 | Сообщение # 11 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| сейчас дам. А тебе функцию выстрела или цикл, где вызывается функция?
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Draw | Дата: Суббота, 08 Мая 2010, 18:03 | Сообщение # 12 |
![Draw](http://www.igrostroenie.ru/avatar/72/719085.jpg) Продвинутый
Группа: Участники
Сообщений: 194
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Команда: DeforShys
Проектов: 8 (2 активных 6 инактив)
| цикл и ключевые строчки связаные с выстрелом
ICQ 557709132 пиши. Отвечу на любой вопрос по блицу
|
|
| |
maxturbo | Дата: Суббота, 08 Мая 2010, 18:28 | Сообщение # 13 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| Пробуй делать фпс а игре а переменная time будет равна фпс тоесть 60 просто не помню как это все вводится :-)
|
|
| |
maxturbo | Дата: Суббота, 08 Мая 2010, 18:32 | Сообщение # 14 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| а лучше действительно код цикла выложи и там видно будет что у тебя не так!
|
|
| |
Optimus | Дата: Суббота, 08 Мая 2010, 18:38 | Сообщение # 15 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| я с телефона, я завтра напишу
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Optimus | Дата: Вторник, 11 Мая 2010, 20:17 | Сообщение # 16 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| ПарДон за такое завтра, у меня счас интернета нет, я завтра или послезавтра через друга скину
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
maxturbo | Дата: Вторник, 11 Мая 2010, 23:07 | Сообщение # 17 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| ну давай
|
|
| |
maxturbo | Дата: Четверг, 13 Мая 2010, 01:42 | Сообщение # 18 |
![maxturbo](http://s5.ucoz.net/a/05/0892.jpg) Профи
Группа: Участники
Сообщений: 379
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программер
Проектов: 1 в разработке
| Вот держи код выстрела с задержкой и обрати внимание на ту часть кода про каторую я тебе говорил и как надо было ее вписывать Code Graphics3D 640,480,32,2 SetBuffer BackBuffer() cam=CreateCamera() time=MilliSecs() PositionEntity cam,0,3,-10 lit=CreateLight() Type Dude Field entity,speed# End Type Repeat
For d.Dude=Each Dude MoveEntity d\entity,0,0,1 If EntityDistance(cam,d\entity)>200 FreeEntity d\entity Delete d EndIf Next
If MouseDown(1) If MilliSecs()> time+1000;(Задержка на одну сек.) time=MilliSecs() For k=1 To 1 sphere=CreateSphere() HideEntity sphere If bul=0 d.Dude=New Dude d\entity=CopyEntity( sphere ) EndIf
Next EndIf EndIf
RenderWorld UpdateWorld Flip Until KeyHit(1) End
Сообщение отредактировал maxturbo - Четверг, 13 Мая 2010, 01:44 |
|
| |
Optimus | Дата: Четверг, 13 Мая 2010, 10:33 | Сообщение # 19 |
![Optimus](http://igrostroenie.my1.ru/avatar/08/311469.png) Крутой
Группа: Участники
Сообщений: 646
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Профессия: Программист
Команда: Solomanders te@m
Проектов: TripleWar(разработка)
| Сейчас код дам....... вот вызываю из цикла Code If MouseHit(1) create_shot(EntityX(user),EntityY(user),EntityZ(user),EntityPitch(cam),EntityYaw(user),0) авот и сама функция и обновление выстрела Code
Function create_shot(x#,y#,z#,pitch#,yaw#,roll#) shottime=MilliSecs() If MilliSecs()>shottime=1000 s.shot=New shot s\entity=CopyEntity(shot_sprite) EntityType s\entity,SHOTT PositionEntity s\entity,x#,y#,z#,1 RotateEntity s\entity,pitch#,yaw#,roll#,1 patrons=patrons-1 EndIf End Function
Function update_shot() pt_patrons=30-patrons v#=1 max_dist#=1000 For a.shot=Each shot ;= If a\time=0 a\time=MilliSecs() new_time=MilliSecs() delta_t=new_time-a\time a\time=new_time vs#=v*delta_t ;= MoveEntity a\entity,0,0,vs# a\dist#=a\dist#+vs# If a\dist#>max_dist# FreeEntity a\entity Delete a ElseIf EntityCollided(a\entity,KARTA)<>0 FreeEntity a\entity Delete a EndIf If patrons=0 Then patrons2=patrons2-pt_patrons patrons=patrons+pt_patrons EndIf Next End Function
Internet Explorer-замечательный браузер для того чтобы зайти и скачать Firefox
|
|
| |
Draw | Дата: Четверг, 13 Мая 2010, 19:50 | Сообщение # 20 |
![Draw](http://www.igrostroenie.ru/avatar/72/719085.jpg) Продвинутый
Группа: Участники
Сообщений: 194
Награды: 0
Замечания: 0%
Статус: ![](/on.gif)
Команда: DeforShys
Проектов: 8 (2 активных 6 инактив)
| local shottime=MilliSecs() все что требуется. Я не читал дальше этой строчки и поэтому возможно я не прав
ICQ 557709132 пиши. Отвечу на любой вопрос по блицу
|
|
| |