Цитата:
Похоже уже давно надо эту тему переименовать в "Записки начинающего Игродела".
|
Хех ) Возможно ) Сдачу курсовой на счастье продлили еще где-то на 2 недели, так что я в какой-то мере расслабился. Однако все еще надо решить главную проблему - таблица рекордов, но вроде как еще живет идея, надо только реализовать попробовать )
К тому же я уже люблю свою игру!

Так что даже если курсовая закончится я хочу улучшить её еще как можно больше, ибо планов хватает )
Цитата:
Без полного исходного кода трудновато подсказывать.
|
Я могу кинуть исходник (похвастаться своими достижениями), но уверен, что разбираться в моих каракулях Вам будет не особо желанно ) Так что я постараюсь пояснить что же я вписал.
Итак.
Юнит Монстра
.....
тип
Монстр положение = (Жив, ранен, атака);
Монстр = класс (ТИмэйджСпрайт)
откататаки: реал;
.....
private
.....
public
.....
Где точки, это то, что по-моему не относится к откату атаки и положению атаки.
Далее, я в процедуре DoMove монстра пишу:
если монстр_слева_от_героя
или монстр_справа_от_героя
то
Положение:=Атака;
если Положение=Атака
то
начнем
откататаки:=35;
вместе с TКоготь.Создать
делать
если герой_слева
то появление когтя с поправкой влево;
если герой_слева
то появление когтя с поправкой вправо;
конец;
ТКоготь это невидимый спрайт атаки. До другого я просто пока не додумался. Если есть альтернативный вариант, то я с удовольствием приму знания )
Далее мне нужно сделать три записи.
Первая, это в процедуре Таймер, в основном юните. Там я записываю постоянное снижение откататаки на единицу.
Попробовал вписывать уменьшение откататаки в процедуре DoMove монстра, но вышло так, что откат начинается только тогда, когда монстр двигается =\
Вторая, - записать в юните Коготь, в процедуре DoMove, что если откататаки монстра меньше либо равно числу 15, то коготь умирает/исчезает.
Третья, - в процедуре коллизии Героя, что если он сталкивается со спрайтом Коготь и откат когтя равно 15, то она получает урон.
В итоге должно получится, что при атаке монстр создает откататаки, воспроизводит анимацию атаки, воспроизводит спрайт коготь и через несколько мгновений коготь должен исчезнуть в не зависимости от того, попал он в героя или нет, - завершение атаки. Далее остается 20 единиц отката не позволяющих монстру атаковать повторно.
Ранее я делал откататака в варе основного юнита, но работало оно как бы глобально и поэтому если один монстр атаковал, то стопились все.
Вот, собственно и вся проблема, да