Class Inventory

java.lang.Object
com.mycompany.extractionshootergui.Inventory

public class Inventory extends Object
Mengelola ruang penyimpanan barang (stash) dan keuangan pemain.

Kelas ini bertanggung jawab atas penyimpanan item polimorfik (turunan dari Item), akumulasi saldo uang, serta mekanisme transaksi seperti menjual, membeli, membayar, dan memindahkan seluruh aset rampasan saat musuh tereliminasi.

Version:
1.0
Author:
UnggulWindows
  • Constructor Summary

    Constructors
    Constructor
    Description
    Mengonstruksi objek Inventory baru dengan saldo awal 0 dan daftar penyimpanan barang yang kosong.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    bayar(int jumlah)
    Melakukan pembayaran langsung (misalnya saat mengisi amunisi atau membeli perlengkapan) yang tidak langsung dimasukkan ke dalam daftar item stash.
    boolean
    beliItem(Item item)
    Membeli item dan menyimpannya ke dalam stash jika saldo mencukupi.
    Mengambil referensi daftar item yang ada di stash.
    int
    Mengambil jumlah total barang yang tersimpan di dalam stash saat ini.
    int
    Mengambil total saldo uang yang dimiliki saat ini.
    boolean
    jualItem(Item item)
    Menjual item yang ada di stash.
    void
    Memindahkan seluruh barang dalam stash dan seluruh saldo uang ke inventaris lain.
    void
    Menambahkan item hasil rampasan (looting) gratis ke dalam stash.
    void
    tambahSaldo(int jumlah)
    Menambahkan sejumlah saldo uang tunai ke dalam inventaris.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Inventory

      public Inventory()
      Mengonstruksi objek Inventory baru dengan saldo awal 0 dan daftar penyimpanan barang yang kosong.
  • Method Details

    • tambahLoot

      public void tambahLoot(Item item)
      Menambahkan item hasil rampasan (looting) gratis ke dalam stash. Item ini bukan didapat dari hasil pembelian di toko.
      Parameters:
      item - objek Item yang berhasil dirampas atau ditemukan.
    • jualItem

      public boolean jualItem(Item item)
      Menjual item yang ada di stash. Item akan dihapus dari daftar barang dan saldo pemain akan bertambah sesuai harga jual item tersebut.
      Parameters:
      item - item yang ingin dijual dari stash.
      Returns:
      true jika item ada di stash dan berhasil dijual; false jika item tidak ditemukan.
    • beliItem

      public boolean beliItem(Item item)
      Membeli item dan menyimpannya ke dalam stash jika saldo mencukupi.
      Parameters:
      item - item yang ingin dibeli.
      Returns:
      true jika saldo mencukupi dan pembelian berhasil; false jika saldo tidak mencukupi.
    • bayar

      public boolean bayar(int jumlah)
      Melakukan pembayaran langsung (misalnya saat mengisi amunisi atau membeli perlengkapan) yang tidak langsung dimasukkan ke dalam daftar item stash.
      Parameters:
      jumlah - nominal uang yang harus dibayar.
      Returns:
      true jika pembayaran sukses (saldo >= jumlah); false jika saldo tidak mencukupi.
    • pindahkanSemuaKe

      public void pindahkanSemuaKe(Inventory penerima)
      Memindahkan seluruh barang dalam stash dan seluruh saldo uang ke inventaris lain. Biasanya dipanggil saat pemain yang menang merampas seluruh harta milik musuh yang tewas.
      Parameters:
      penerima - inventaris penerima aset.
    • tambahSaldo

      public void tambahSaldo(int jumlah)
      Menambahkan sejumlah saldo uang tunai ke dalam inventaris.
      Parameters:
      jumlah - nominal saldo yang ditambahkan.
    • getSaldo

      public int getSaldo()
      Mengambil total saldo uang yang dimiliki saat ini.
      Returns:
      saldo uang tunai dalam Rupiah.
    • getJumlahBarang

      public int getJumlahBarang()
      Mengambil jumlah total barang yang tersimpan di dalam stash saat ini.
      Returns:
      kuantitas barang dalam stash.
    • getBarangList

      public List<Item> getBarangList()
      Mengambil referensi daftar item yang ada di stash.
      Returns:
      List berisi objek Item.