Показать сообщение отдельно
Старый 21.09.2007, 01:11   #2
AndruXa
Знающий
 
Регистрация: 10.09.2007
Сообщений: 262
Написано 6 полезных сообщений
(для 8 пользователей)
Re: Создаём свой FPS (first person shooter)

Хм..... смотрю я на все это и думаю, что чего-то не хватает. И решил добавить.....
Function update_user()
sp#=.05
shoe_size#=7.0 
head_bang_X#=0.1 
head_bang_Y#=0.1
walking=0
If KeyDown(30) Then: MoveEntity user,-V#,0,0 : walking=1: EndIf
If KeyDown(32) Then: MoveEntity user, V#,0,0 : walking=1: EndIf
If KeyDown(17) Then: MoveEntity user,0,0, +V# : walking=1: EndIf
If KeyDown(31) Then: MoveEntity user,0,0,-V# : 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_bang_Y#,0,0
	
	MoveMouse GraphicsWidth()*0.5,GraphicsHeight()*0.5
	If Abs(EntityPitch#(camera))>u# RotateEntity camera,u#*Sgn(EntityPitch#(camera)),0,0
Здесь имитация реальных шагов, ато игрок движется как - то некрасиво, прямолинейно. (меняем обычное перемещение игрока на представленное)
Да и добавил вот код собирания бонусов, но чет не работает вроде все просто и правильно ПОСМОТРИТЕ ПОЖАЛСТА
Const  TypeBonus=6

Global Bonus=CreateCylinder()
EntityType Bonus,TypeBonus
PositionEntity Bonus,0,5,0

Function update_user()
If EntityCollided (user,TypeBonus) Then 
PositionEntity Bonus,Rnd(-40,40),0,Rnd(-40,40)
 user_H=user_H+20
Function create_world()
Collisions USERT,TypeBonus,2,2
(Offline)
 
Ответить с цитированием