Membuat Game Canon di Unity dengan C#

Dalam tutorial ini, kita akan membuat game Canon sederhana menggunakan Unity dan C#. Anda akan mempelajari dasar-dasar menyiapkan proyek Unity, membuat objek game, menangani input pengguna, dan mengimplementasikan mekanisme game.

Prasyarat

Untuk mengikutinya, pastikan Anda memiliki:

  • Unity diinstal di komputer Anda (versi 20xx.x atau lebih baru)
  • Pemahaman dasar tentang antarmuka Unity dan pengaturan adegan
  • Familiar dengan bahasa pemrograman C#

Menyiapkan Proyek

Mari kita mulai dengan menyiapkan proyek Unity baru:

  1. Buka Unity Hub dan klik New untuk membuat proyek baru.
  2. Pilih templat (3D atau 2D) dan beri nama proyek Anda (misalnya CanonGame).
  3. Klik Create untuk membuat proyek.

Membuat GameObject Canon

Berikutnya, kita akan membuat objek Canon di adegan kita:

  1. Di panel Hierarchy, klik kanan dan pilih Create Blank untuk membuat GameObject baru.
  2. Ganti nama GameObject menjadi "Canon".
  3. Klik kanan pada "Canon" di Hierarchy dan pilih 3D Object -> Cylinder untuk membuat bentuk silinder untuk kanon kita.
  4. Posisikan dan skalakan silinder agar menyerupai kanon.

Menulis Skrip Canon dalam C#

Sekarang, mari kita menulis skrip untuk mengontrol kanon:

  1. Di panel Proyek, buat folder baru bernama "Scripts".
  2. Klik kanan pada folder "Scripts" dan pilih Create -> C# Script.
  3. Beri nama skrip "CanonController".
  4. Klik dua kali pada skrip untuk membukanya di editor kode pilihan Anda.
using UnityEngine;

public class CanonController : MonoBehaviour
{
    // Variables for canon rotation and firing logic

    void Start()
    {
        // Initialization code
    }

    void Update()
    {
        // Update code (e.g., check for user input)
    }
}

Menambahkan Fungsionalitas ke Canon

Mari tambahkan fungsi untuk memutar dan menembakkan kanon:

  1. Dalam skrip CanonController, nyatakan variabel untuk mengontrol rotasi dan penembakan kanon.
  2. Dalam metode Update, menangani masukan pengguna untuk memutar kanon ke kiri dan kanan.
  3. Tambahkan metode untuk menangani penembakan kanon (misalnya, membuat contoh bola meriam).
using UnityEngine;

public class CanonController : MonoBehaviour
{
    // Define variables for canon rotation speed
    public float rotationSpeed = 5f;

    // Define variables for cannonball prefab and firing position
    public GameObject cannonballPrefab;  // Assign in Unity Editor
    public Transform firePoint;  // Assign fire point transform in Unity Editor

    void Update()
    {
        // Handle canon rotation based on user input
        float horizontalInput = Input.GetAxis("Horizontal");
        transform.Rotate(Vector3.up, horizontalInput * rotationSpeed * Time.deltaTime);

        // Handle canon firing when spacebar is pressed
        if (Input.GetKeyDown(KeyCode.Space))
        {
            FireCanon();
        }
    }

    void FireCanon()
    {
        // Check if cannonball prefab and fire point are assigned
        if (cannonballPrefab != null && firePoint != null)
        {
            // Instantiate a cannonball at the fire point position and rotation
            GameObject cannonball = Instantiate(cannonballPrefab, firePoint.position, firePoint.rotation);
            
            // Add force to the cannonball (example: forward direction with speed)
            float cannonballSpeed = 10f;
            cannonball.GetComponent<Rigidbody>().velocity = firePoint.forward * cannonballSpeed;
        }
        else
        {
            Debug.LogError("Cannonball prefab or fire point is not assigned.");
        }
    }
}

Menguji dan Memainkan Game

Sekarang, mari kita uji dan mainkan game Canon kita:

  1. Simpan skrip dan kembali ke Unity.
  2. Lampirkan skrip CanonController ke GameObject "Canon" dengan menyeretnya ke panel Inspector pada GameObject "Canon".
  3. Tekan tombol Putar di Unity untuk menjalankan permainan.
  4. Gunakan tombol panah atau tombol A/D untuk memutar kanon.
  5. Tekan Spasi untuk menembakkan kanon (menerapkan fungsi ini bersifat opsional berdasarkan skrip Anda).

Kesimpulan

Selamat! Anda telah membuat game Canon sederhana di Unity menggunakan C#. Anda telah mempelajari cara menyiapkan proyek Unity, membuat GameObjects, menulis skrip dalam C#, dan menerapkan mekanisme permainan dasar. Dari sini, Anda dapat memperluas dan menyempurnakan game Anda lebih jauh.