<р> Загрузить исходный код ИСТОЧНИК
<р> Возврат к учебнику ИНДЕКС
В прошлом уроке мы добавили компонент, чтобы лица, которые будут уничтожены на столкновения. Это обошел HealthComponent используемый противника лиц, но теперь мы прошли полный круг и добавить HealthComponent к игроку, поэтому он может быть поврежден пулями противника. Здесь мы добавляем HealthComponent, и указать, что игра имеет начальную здоровья 5.
<р> код
<р> Для игрока на расстрел мы должны создать новый шаблон объекта.
Это почти точная копия шаблона EnemyBullet, за исключением видов типа лицо и столкновения меняются, чтобы идентифицировать его как пуля врагом и столкновения с игроком
. <Р> код
<р> EnemyControllerComponent .as
<р> Так же, как PlayerControllerComponent, который создает новый объект PlayerBullet После нажатия пробела, тем EnemyControllerComponent будет случайным образом создавать новый EnemyBullet сущность.
<р> Переменная timeToNextShot, используется для контроля количество времени между каждой возможной стрельбы пули, отсчитывается до 0.
общественная функция коррекции OnTick (тикрейтом: Number): пустота {//... timeToNextShot - = тикрейтом; timeToNextShot = timeToNextShot <р> После timeToNextShot достигает 0 противник будет иметь возможность выстрелить. TimeToNextShot сбрасывается, чтобы начать отсчет снова
, если (timeToNextShot == 0) {timeToNextShot = timeBetweenShots;. <Р> Мы хотим, чтобы эти кадры, чтобы быть случайным, поэтому мы используем переменную chanceOfShot с случайной функции чтобы определить, если выстрел должны быть приняты.В следующем, если заявление имеет 1 в chanceOfShot шанс быть правдой.
, если (Math.round (мой E-mail () * chanceOfShot) == 0) {<р> Если, если заявление будет верно новый экземпляр шаблона EnemyBullet создается, расположены и установить скорость
Вар пуля:. IEntity = TemplateManager.instance.instantiateEntity (bulletEntityName); если (пуля! = NULL) {вар пространственное: Box2DSpatialComponent = bullet.lookupComponentByType (Box2DSpatialComponent), как Box2DSpatialComponent; Spatial.position = новая точка (position.x, position.y); spatial.linearVelocity = новая точка (0, bulletSpeed); }}}} <Р> Мы должны сделать небольшое изменение в PlayerControllerComponent остановить вражеских пуль стучать игрока с экрана. Когда два объекта сталкиваются в системе физики они не просто остановить мертв - если только они не сталкиваются с головы на оди
Создание клона Space Invaders с КНОПКА - Главная Menu
- Работа с Sql переменных в Sybase SQL Anywhere
- Доступ заказчики, в классах C ++
- Абстракция Oop
- Краткий обзор SQL Injection
- Papervision 3D-программирование - Отсечение & Amp; Amp;…
- Белое пространство в Java
- Бизнес Значение Requirements
- Создание платформы флэш-игры с Flixel и Flex - Нач…
- Papervision 3D Программирование Учебник - Простой …
- Что smss.exe?