Zasięg działa
Część sekcji Fizyka i rozgrywka ścieżki Unity w Coddy. Lekcja 66 z 71.
Armata stoi na jednym końcu strzelnicy, a trzy cele przesuwają się z boku na bok w różnych odległościach. Unosisz i opuszczasz lufę, aby dosięgnąć każdej odległości, i oddajesz strzał w chwili, gdy cel przecina linię strzału. Kula, która trafi w cel, strąca go i zostaje zużyta; wszystko inne, co uderzy w cel, pozostawia go bez zmian. Cele są ciałami kinematycznymi, więc trafienia nigdy ich nie popychają, a armata mieści pięć kul.
Napisz dwa skrypty: Cannon dla lufy i Target dla każdego celu.
Wyzwanie
TrudnyNapisz kod działa armaty: wyceluj nią, a następnie wystrzel pięć kul.
- W
Update()dodajInput.GetAxisRaw("Vertical") * turnSpeed * Time.deltaTimedoangle, ogranicz jego wartość do zakresu od 10 do 60 i ustawtransform.rotation = Quaternion.Euler(-angle, 0f, 0f);. - Po naciśnięciu klawisza Space, gdy
balls > 0, utwórz obiektballPrefabw miejscutransform.position + transform.forwardi wywołajAddForce(transform.forward * power, ForceMode.Impulse). - Odejmij 1 od
ballsi wyświetl w logu"Balls left: " + balls.
Naciśnij „Graj” i strzel. Następnie naciśnij „Sprawdź”.
Spróbuj swoich sił
using UnityEngine;
public class Cannon : MonoBehaviour
{
[SerializeField] private Rigidbody ballPrefab;
[SerializeField] private float angle = 30f;
[SerializeField] private float turnSpeed = 40f;
[SerializeField] private float power = 30f;
[SerializeField] private int balls = 5;
void Update()
{
// Celuj strzałkami w górę i w dół, strzelaj klawiszem Space
}
}
Wszystkie lekcje w sekcji Fizyka i rozgrywka
1Ciało sztywne
Grawitacja i masaPopychanie za pomocą AddForceSkok z impulsemFixedUpdate dla fizykiPrędkośćCiała kinematycznePowtórka: platforma startowa4Korutyny
WywoływanieInvokeRepeating i CancelInvokeTwoja pierwsza korutynaPętle w korutynachZatrzymywanie korutynPodsumowanie: odliczanie10Projekt: Ucieczka z areny
ArenaŁowcy2Kolizje
OnCollisionEnterW co uderzyłem?Rozbijanie przy zderzeniuStanie na podłożuOdbicie i tarcieKształty colliderówPodsumowanie: Zniszczalny mur5Projekt: Wyścig po monety
Tocząca się piłkaZbieranie monet3Wyzwalacze
Kolizje wyzwalająceOnTriggerEnterPrzedmioty do zebraniaSkrzynie zatrzymują resztęStrefy śmierciWejście i wyjściePodsumowanie: klucz i drzwiPoćwicz samodzielnie: Edytor online Unity