forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Создание игры (http://forum.boolean.name/showthread.php?t=177)

ZanoZa 08.10.2005 17:29

[color=blue]Пытаюсь создать полноценную стрелялку!Помогите :SOS: !!!

alcosholik 08.10.2005 17:38

http://community.boolean.name/index.php?showtopic=19
Отредактируй под свои нужды, и готово! :)

ZanoZa 08.10.2005 23:20

ААА!!! не пойдёт :o мне нужен хороший ИИ, типа чтоб припятствия обходил :))
Короче с чуваками делем игру, так вот и возникают вопросы :rolleyes:

alcosholik 09.10.2005 02:03

http://blitzetc.boolean.name/03-apr05.htm#6
Там в конце статьи ссылки полезные есть по теме.

ZanoZa 09.10.2005 20:52

ААА ясно :bravo: А теперь вопрос на миллион :)) из за которого меня послали взашей с другого форума :unsure:
!!!Как сделать переключение между оружием чтоб всякие характеристики были и т.д.
:SOS: :SOS: :SOS:

pax 09.10.2005 21:06

1. Создай тип(стисок или Type) Weapon, полями(Field) которого будут его (оружия) свойства (модель, мощность, дальность и т.д.;

2. Создай массив этого типа, размерность которого будет означать кол-во оружия;

3. Проинициализируй весь массмв (оператор New) и загрузи/установи значения его полей;

4. Создай переменную, которая будет содержать информацию - какое оружие выбрано;

5. Создай функцию смены оружия.

Вот и все. :)

ZanoZa 14.10.2005 17:49

Цитата:

Originally posted by PAX@Oct 9 2005, 07:06 PM
1. Создай тип(стисок или Type) Weapon, полями(Field) которого будут его (оружия) свойства (модель, мощность, дальность и т.д.;

2. Создай массив этого типа, размерность которого будет означать кол-во оружия;

3. Проинициализируй весь массмв (оператор New) и загрузи/установи значения его полей;

4. Создай переменную, которая будет содержать информацию - какое оружие выбрано;

5. Создай функцию смены оружия.

Вот и все. :)

Не понятно.:bad: А может исходник выложишь? :rolleyes:

pax 14.10.2005 18:27

Вот что-то подобное (пишу прямо на форуме):
Код:

Type Weapon
 * Field Model%
 * Field Power%
 * Field Name$
 *;...
End Type

Dim Weapons.Weapon(CountWeapons%)
For I=1 to CountWeapons
 *Weapons.Weapon(I)= New Weapons
Next

;Здесь ты должен загрузить оружие, скрыть модели, задать параметры оружия и т.д.

;...

;Переменная содержащая текущее оружие
Global CurrentWeapon.Weapon=New Weapon

;Функция смены оружия
Function ChangeWeapon(WeaponIndex%)
 * If CurrentWeapon\Model% then FreeEntity(CurrentWeapon\Model%):CurrentWeapon\Model%=0
 * CurrentWeapon\Model%=CopyEntity(Weapons(WeaponIndex%)\Model%)
 * CurrentWeapon\Power%=Weapons(WeaponIndex%)\Power%
 * CurrentWeapon\Name$=Weapons(WeaponIndex%)\Name$
 *;...
End Function

Для получения параметров выбранного оружия используй: CurrentWeapon\Parameter

ZanoZa 14.10.2005 23:57

Хм... Ну да более понятно стало... :)

jimon 15.10.2005 08:45

to pax:
конешно создавать dim aa.bb хорошо
но помойму лутче создать обычный dim aa
и заносить туда handle обектов типа

или вообще несоздавать никаких там dimов, а работать прямо с типами
помойму так лутче выглядить и меньше памяти есть ;)

ZanoZa 15.10.2005 10:13

А ну ка поподробней!!!

jimon 15.10.2005 14:55

пишу опять прямо на форуме :))



Код:

type weapon
...
end type

dim we(10)

for create=0 to 9
w.weapon=new weapon
we(create)=handle(w)
next

global current_weapon

function changeweapon(weapon)
 *current_weapon=we(weapon)
end function

function update_weapons()
w.weapon=object.weapon(current_weapon)
.....
работа с оружием здесь
.....
end function

вот так
идея такова чтобы получать в update_weapons прямо w а не перебирать все обекты

можно конешно и так :
Код:

type weapon
field id
...
end type

for cr=0 to 10
w.weapon=new weapon
w\id=cr
next

global current_weapon

function changeweapon(weapon)
 *current_weapon=we(weapon)
end function

function update_weapons()
for w.weapon=next weapon
if w\id=current_weapon then
.....
работа с оружием здесь
.....
return 0
end if
next
end function


второй метод будет занимать чучуть меньше места в памяти но будет НА МНОГО раз медленее первого

я первый метод использую всегда
хотя я раньше использовал чтото типа второго метода и метода что предложил PAX

Guest 15.10.2005 15:07

Чё ставить вместо точек :)

jimon 15.10.2005 15:19

привязываеш оружие к модели игрока (в процессе создания типов оружия)
а в место точек обычно ставят проверку на выстрел

pax 15.10.2005 17:06

Цитата:

хотя я раньше использовал чтото типа второго метода и метода что предложил PAX
Ну я еще не писал стрелялок, а этот код я придумал прямо сходу :)


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot