Aplikasi web yang memerlukan satu mesin untuk menjalankan server lokal. Pemain kemudian dapat mendaftar, login dan terhubung ke game utama. Pemain kemudian dapat melihat informasi mereka di perangkat utama (perangkat untuk menampilkan halaman indeks ke semua pengguna) serta di perangkat mereka sendiri (sebaiknya perangkat seluler) dan mengajukan tawaran terhadap satu sama lain.
Diuji menggunakan:
PHP 7.0.8
dengan PHPUnit 5.7.4
untuk menjalankan kasus ujiComposer 1.00-beta2
MySQL 5.7.4
Apache 2.4.18
Ini akan mengasumsikan Anda telah mengunduh/menjalankan semua program dan tidak akan berjalan menggunakan Komposer dan PHPUnit
Semua skema terletak di direktur MySQL/
.
Untuk menambahkan skema (dengan asumsi Anda berada di direktori yang benar):
mysql < MySQL/schema.sql
Chip Manager sangat bergantung pada file konfigurasi Anda, bernama config.ini
yang harus Anda buat dan simpan di direktori root
Struktur dasar file konfigurasi terlihat seperti ini
[database]
username = username
password = password
server = server_address
database = database_name
[information]
address = local_address
logfile = log_file
Anda harus mengganti setiap variabel agar sesuai dengan pengaturan Anda.
Halaman indeks akan mencantumkan semua orang yang bermain saat ini (dengan mendapatkan status koneksi mereka) dan mencantumkan mereka beserta informasi terkini mereka (seperti tawaran / total chip mereka saat ini).
play.php
menangani sisi klien permainan dan memungkinkan orang bermain melalui klien web ramah seluler. Ini sangat mirip dengan aplikasi Android sehingga beralih di antara keduanya tidak akan menjadi masalah
Layar utama akan hadir di meja permainan dan ini akan menampilkan halaman index.php
.
Pemain kemudian akan menggunakan perangkat mereka sendiri untuk mengakses server yang menjalankan permainan, mendaftar menggunakan register.php
, login menggunakan login.php
dan kemudian diarahkan ke play.php
di mana mereka dapat mengajukan tawaran dan berpartisipasi dalam permainan.
Saat pemain mengajukan tawaran, informasi mereka akan ditampilkan di layar utama. Ketika seorang pemain menang, mengklik "pemain telah menang" akan mentransfer semua chip tawaran ke pemain itu.
Panggilan API ditujukan untuk aplikasi eksternal (seperti aplikasi Android) serta untuk penggunaan beberapa tugas dasar game.
Setiap file php mengembalikan 3 parameter dalam bentuk JSON:
Nama | Keterangan | Selalu Hadir |
---|---|---|
kesalahan | Jika ada pesan kesalahan, deskripsi string akan dikembalikan. Jika tidak, 0 akan dikembalikan | BENAR |
kesuksesan | Apakah transaksi berhasil atau tidak (0 atau 1) | BENAR |
data | Data yang dikembalikan. Seringkali akan memiliki sub level JSON. | PALSU |
Panggilan API yang memengaruhi game yang sedang berlangsung atau mendapatkan informasi tentang game saat ini. Ini disimpan di direktori api/game
.
Dapatkan semua ID pemain yang terhubung dalam array di bawah data['players']
.
Dapatkan semua informasi pemain yang terhubung termasuk:
Informasi pemain disimpan di bawah data['players']
.
Masuk pemain berdasarkan kombinasi nama pengguna / kata sandi dan setel pemain sebagai terhubung.
Membutuhkan dua parameter POST
:
username
- Nama pengguna pemain untuk loginpassword
- Kata sandi untuk memverifikasi pemain Memberi tahu permainan bahwa pemain telah memenangkan permainan saat ini. Mereka akan menerima semua chip yang ditawar oleh semua pemain.
Membutuhkan satu parameter GET
atau POST
:
ID
- ID pemain yang menang Untuk verifikasi, ini mengembalikan ID pemain pemenang pada data['winner']
dan jumlah yang dimenangkan pemain pada data['chips_won']
.
Panggilan API yang memengaruhi pemutar. Membutuhkan ID
sebagai parameter GET
atau POST
.
Menempatkan tawaran baru untuk pemain.
Memerlukan parameter GET
atau POST
tambahan:
amount
- Jumlah yang ingin dipertaruhkan pemain Mengembalikan semua info pemain di bawah data
Mendapatkan semua informasi terkini pengguna.
Mengambil parameter opsional tambahan:
needs_update
- Jika disetel ke 1
, akan memeriksa apakah pemutar perlu diperbarui sebelum mengembalikan informasi Mengembalikan semua info pemain di bawah data
Menyetel ulang tawaran pemain saat ini ke 0
Memeriksa apakah pemain perlu diperbarui. Jika demikian, kembalikan semua informasi pemain.
Mengembalikan apakah pemain telah diperbarui pada data['needs_update']
dan informasi tentang pemain pada data['player']