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

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

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

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 06.07.2013, 20:56   #1
Demon
Оператор ЭВМ
 
Регистрация: 04.07.2013
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Сообщение хп

Еще один вопрос.
Вот создал хп и мп.
С помощью какой команды сделать так чтобы при столкновение с объектом хп убавлялись.

Global energy,r1,g1,b1,x1,y1,font_power
AppTitle"Power"
Graphics3D 640,480,16,2
font_power=LoadFont("Arial",18,1)
SetBuffer BackBuffer()

camera=CreateCamera()
light=CreateLight()

cone=CreateCone( 32 )
PositionEntity cone,0,0,5

While Not KeyDown( 1 )

TurnEntity cone,1,1,1

RenderWorld()

PositionPower(10,GraphicsHeight()-60)
ColorPower(255,0,0)
Power(100,"Health Power")

PositionPower(10,GraphicsHeight()-3
ColorPower(0,0,255)
Power(80,"Magic Power")

Flip
Wend
End

Function PositionPower(x,y) ;x,y - позиции полосы энергии на экране
x1=x:y1=y
End Function

Function ColorPower(r,g,b) ;r,g,b - цвет полосы энергии в RGB
r1=r:g1=g:b1=b
End Function

Function Power(energy,text_$) ;energy - заполнение полосы энергии значения от 0 до 100, text_$ - текст
If energy>100 Then energy=100
If energy<0 Then energy=0
Color 255,255,255:Rect x1,y1,104,19,0
Color r1,g1,b1:Rect x1+2,y1+2,energy,15,1
SetFont font_power
Text x1+109,y1+1,text_$
End Function
(Offline)
 
Ответить с цитированием
Старый 06.07.2013, 21:13   #2
ant0N
Бывалый
 
Аватар для ant0N
 
Регистрация: 10.06.2011
Адрес: В горах
Сообщений: 849
Написано 331 полезных сообщений
(для 853 пользователей)
Ответ: хп

если я правильно понял, то..
сначала назначаешь коллизии
Const TypePlayer = 1, TypeEnemy = 2
EntityType player, TypePlayer
EntityType enemy, TypeEnemy
Collisions TypePlayer, TypeEnemy, 2, 2
а потом:
if EntityCollided (player, TypeEnemy)
    ; тут убавляешь
endif
__________________
Абсолютли!
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Demon (06.07.2013)
Старый 06.07.2013, 22:19   #3
Demon
Оператор ЭВМ
 
Регистрация: 04.07.2013
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: хп

if EntityCollided (player, TypeEnemy)
; тут убавляешь что писать -1Health Power или как просто не оч разбираюсь
endif
(Offline)
 
Ответить с цитированием
Старый 06.07.2013, 23:04   #4
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: хп

if EntityCollided (player, TypeEnemy)
health = health -1
endif
еще надо сделать задержку какую нибудь при отнимании хп/мп иначе при столкновении у тебя тут же отнимутся все хп/мп.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Demon (06.07.2013)
Старый 06.07.2013, 23:09   #5
Demon
Оператор ЭВМ
 
Регистрация: 04.07.2013
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: хп

написал игра запустилась но при столкновение с объектом хп не убавляются
(Offline)
 
Ответить с цитированием
Старый 06.07.2013, 23:19   #6
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: хп

Для начала вопрос. Ты переменную "health" заменил на свою (energy)?

Если да то в данной ситуации помогает дебаг.
if EntityCollided (player, TypeEnemy)
health = health -1
DebugLog "123"
endif
если в маленьком окошке под окном с игрой появиться "123" значит происходит столкновение и должно отниматься хп/мп
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Demon (07.07.2013)
Старый 06.07.2013, 23:27   #7
Demon
Оператор ЭВМ
 
Регистрация: 04.07.2013
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: хп

все равно не никак
(Offline)
 
Ответить с цитированием
Старый 06.07.2013, 23:54   #8
ant0N
Бывалый
 
Аватар для ant0N
 
Регистрация: 10.06.2011
Адрес: В горах
Сообщений: 849
Написано 331 полезных сообщений
(для 853 пользователей)
Ответ: хп

Код в студию
__________________
Абсолютли!
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Demon (07.07.2013)
Старый 07.07.2013, 00:22   #9
Demon
Оператор ЭВМ
 
Регистрация: 04.07.2013
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: хп

вот архив посмотрите если сможете сделайте:
нормальный прыжок
анимированную воду
ну и чтоб хп убавлялись
Вложения
Тип файла: zip games.zip (1.16 Мб, 434 просмотров)
(Offline)
 
Ответить с цитированием
Старый 07.07.2013, 01:48   #10
PREy
AnyKey`щик
 
Аватар для PREy
 
Регистрация: 29.07.2012
Сообщений: 12
Написано 5 полезных сообщений
(для 27 пользователей)
Ответ: хп

Не знаю что я с ним сделал, но ОНО заработало
Вложения
Тип файла: rar HP.rar (840 байт, 430 просмотров)
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Demon (07.07.2013)
Старый 07.07.2013, 11:28   #11
Demon
Оператор ЭВМ
 
Регистрация: 04.07.2013
Сообщений: 35
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: хп

всем спасибо сделал
(Offline)
 
Ответить с цитированием
Старый 09.07.2013, 15:19   #12
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,893
Написано 1,185 полезных сообщений
(для 3,298 пользователей)
Ответ: хп

У тебя у хп и мп одна и таже переменная "energy". Над две делать.
В функции Power в параметрах у тебя стоит переменная "energy". Т.е. ты назначаешь переменной 100 единиц, отнимаешь 1 при столкновении и в следующем цикле снова назначаешь 100 единиц.
Объявляй все стартовые значения перед циклом.

А так же путь до текстур и моделей надо объявлять от папки с игрой.
tex=LoadTexture("texture\dirt.png")
иначе твоя игра не у кого не будет работать.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


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