Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 13.09.2007, 21:45   #1
AndruXa
Знающий
 
Регистрация: 10.09.2007
Сообщений: 262
Написано 6 полезных сообщений
(для 8 пользователей)
Функция стрельбы

Написал вот код стрельбы, но он почему-то не запускается, помогите, в чем причина.
Код:
If MouseDown(1) Then
pulya=CreateSphere()
Function updatepulya()
MoveEntity pulya,0,0,10
If EntityDistance(pulya,player)>100
FreeEntity pulya
Delete pulya
EndIf
Next
End Function
(Offline)
 
Ответить с цитированием
Старый 13.09.2007, 21:49   #2
jimon
 
Сообщений: n/a
Re: Функция стрельбы

global pulya

Function createpulya()
pulya=CreateSphere()
End Function

Function updatepulya()
if pulya = null then return
MoveEntity pulya,0,0,10
If EntityDistance(pulya,player) > 100 then
FreeEntity pulya
pulya = null
End Function

while not keyhit(1)
....
If MouseDown(1) Then createpulya()
updatepulya()
....
wend
должно вроде работать
 
Ответить с цитированием
Старый 13.09.2007, 22:03   #3
AndruXa
Знающий
 
Регистрация: 10.09.2007
Сообщений: 262
Написано 6 полезных сообщений
(для 8 пользователей)
Re: Функция стрельбы

Большое спасибо Сейчас проверю!
(Offline)
 
Ответить с цитированием
Старый 13.09.2007, 22:25   #4
AndruXa
Знающий
 
Регистрация: 10.09.2007
Сообщений: 262
Написано 6 полезных сообщений
(для 8 пользователей)
Re: Функция стрельбы

To jimon: А как мне вставить это в мой код. Ато у меня с объединением кодов проблемы. Никто толком не может объяснить как это делать. Я Вижу 2 стиля: 1)с Repeat(в котором я пишу)
2)с Функциями
А вот как их объединить не представляю
Код:
Graphics3D 1024,768,32,1
SetBuffer BackBuffer()

Const typeplayer=1,Typepln=2

Global pulya

lit=CreateLight()

player=CreatePivot()
PositionEntity player,0,10,0
EntityRadius player,.9
EntityType player,Typeplayer

camera=CreateCamera( player )
TranslateEntity camera,0,0.9,0
CameraRange camera,.1,200


pln=CreatePlane()
tex=LoadTexture("111.jpg")
ScaleTexture tex,5,5
EntityTexture pln,tex
EntityType pln,Typepln



Collisions typeplayer,Typepln,2,2

Repeat

;Параметр ускорения
sp#=.05
shoe_size#=7.0
head_bang_X#=0.1
head_bang_Y#=0.1

;Система навигации мыши
mxs#=MouseXSpeed()/4.0
mys#=MouseYSpeed()/4.0
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
camxa#=camxa-mxs Mod 360
camya#=camya+mys
If camya<-90 Then camya=-90
If camya>90 Then camya=90
RotateEntity player,0,camxa,0
RotateEntity camera,camya,0,0
;Перемещение игрока
MoveEntity player,0,-.05,0
walking=0
If KeyDown(203) Then: MoveEntity player,-sp,0,0 : walking=1: EndIf
If KeyDown(205) Then: MoveEntity player, sp,0,0 : walking=1: EndIf
If KeyDown(200) Then: MoveEntity player,0,0, sp : walking=1: EndIf
If KeyDown(20 Then: MoveEntity player,0,0,-sp : walking=1: EndIf

If walking=1
a1#=(a1#+shoe_size) Mod 360
Else
EndIf
PositionEntity camera,Cos(a1#)*head_bang_X#,Sin(90+a1#*2)*head_ba ng_Y#,0,0



UpdateWorld

RenderWorld
Flip

Until KeyHit(1)

End
(Offline)
 
Ответить с цитированием
Старый 13.09.2007, 22:56   #5
jimon
 
Сообщений: n/a
Re: Функция стрельбы

Graphics3D 1024,768,32,1
SetBuffer BackBuffer()

Const typeplayer=1,Typepln=2

Global pulya

lit=CreateLight()

;--- надо player тогда как глобальную обьявить
Global player=CreatePivot()
PositionEntity player,0,10,0
EntityRadius player,.9
EntityType player,Typeplayer

camera=CreateCamera( player )
TranslateEntity camera,0,0.9,0
CameraRange camera,.1,200


pln=CreatePlane()
tex=LoadTexture("111.jpg")
ScaleTexture tex,5,5
EntityTexture pln,tex
EntityType pln,Typepln

;-------------
Function createpulya()
pulya=CreateSphere()
End Function

Function updatepulya()
if pulya = null then return
MoveEntity pulya,0,0,10
If EntityDistance(pulya,player) > 100 then
FreeEntity pulya
pulya = null
End Function
;-------------



Collisions typeplayer,Typepln,2,2

Repeat

;Параметр ускорения 
sp#=.05
shoe_size#=7.0 
head_bang_X#=0.1 
head_bang_Y#=0.1

;Система навигации мыши
mxs#=MouseXSpeed()/4.0
mys#=MouseYSpeed()/4.0
MoveMouse GraphicsWidth()/2,GraphicsHeight()/2
camxa#=camxa-mxs Mod 360
camya#=camya+mys
If camya<-90 Then camya=-90
If camya>90 Then camya=90
RotateEntity player,0,camxa,0
RotateEntity camera,camya,0,0
;Перемещение игрока
MoveEntity player,0,-.05,0 
walking=0
If KeyDown(203) Then: MoveEntity player,-sp,0,0 : walking=1: EndIf
If KeyDown(205) Then: MoveEntity player, sp,0,0 : walking=1: EndIf
If KeyDown(200) Then: MoveEntity player,0,0, sp : walking=1: EndIf
If KeyDown(208) Then: MoveEntity player,0,0,-sp : walking=1: EndIf

If walking=1
a1#=(a1#+shoe_size) Mod 360
Else
EndIf
PositionEntity camera,Cos(a1#)*head_bang_X#,Sin(90+a1#*2)*head_ba ng_Y#,0,0

;-------------
If MouseDown(1) Then createpulya()
updatepulya()
;-------------

UpdateWorld

RenderWorld 
Flip

Until KeyHit(1)

End
смотри, я выделил изменения
 
Ответить с цитированием
Старый 14.09.2007, 10:09   #6
AndruXa
Знающий
 
Регистрация: 10.09.2007
Сообщений: 262
Написано 6 полезных сообщений
(для 8 пользователей)
Re: Функция стрельбы

Спасибо конечно, но чет не запускается. Пишит ошибку
End Functions without Functions
. А ты у себя проверял, может че в функции неправильно???
(Offline)
 
Ответить с цитированием
Старый 14.09.2007, 15:25   #7
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Функция стрельбы

Пули нужно делать в типах(больше возможностей- менше гемору)!!!(иначе некак(небудеш же создавать все пули в игре ручками))
ЗЫ?
Чего мой пост снесли-то?
(Offline)
 
Ответить с цитированием
Старый 14.09.2007, 16:43   #8
jimon
 
Сообщений: n/a
Re: Функция стрельбы

vlad
дай человеку хотя бы с этим разобратся
 
Ответить с цитированием
Старый 14.09.2007, 22:14   #9
ЛысыЙ_Чук-Иванчук
Дэвелопер
 
Регистрация: 19.03.2006
Сообщений: 1,241
Написано 10 полезных сообщений
(для 17 пользователей)
Re: Функция стрельбы

Сообщение от jimon
vlad
дай человеку хотя бы с этим разобратся
Просто вдруг человек вообще невкурсе что есть такое, и будет он сидеть и прописывает pyla_2001....
(Offline)
 
Ответить с цитированием
Старый 14.09.2007, 23:42   #10
AndruXa
Знающий
 
Регистрация: 10.09.2007
Сообщений: 262
Написано 6 полезных сообщений
(для 8 пользователей)
Re: Функция стрельбы

Всем большущее спасибо! Накачал сегодня 30 метров учебников, посвященных этой теме, на досуге буду разбираться. Уверен, что прочитав их все до меня дойдет Ну, я думаю тему можно считать закрытой!
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Nuprahtor (06.03.2009)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Physx реалезиция стрельбы Spy4433 3D-программирование 5 28.08.2009 17:38
функция... DeMoNN Программирование 2 12.03.2009 16:31
функция md5 Seregakz Основной форум 4 11.07.2008 14:48
Функция по координатам... JeSss 3D-программирование 50 29.01.2008 21:04
Объект & функция DRAG C++ 6 02.12.2007 03:18


Часовой пояс GMT +4, время: 05:23.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com