repository.unika.ac.idrepository.unika.ac.id/16193/5/13.07.0024 arjun yovita... · 2018. 5. 28. ·...
TRANSCRIPT
33
BAB IV PEMBAHASAN
4.1 Perancangan Game
Sebelum penulis memulai proses pembuatan game Mission: Save The World yaitu
melakukan pengumpulan data terlebih dahulu seperti mencari informasi melalui literature,
buku, website lingkungan yang resmi dan survei.
Untuk mendapatkan responden dan data yang valid penulis melakukan survei
langsung ke sekolah dasar agar tepat sasaran yaitu anak usia sekolah dasar, survei
dilakukan dalam dua tahap yaitu pretest diberikan sebelum bermain game sedangkan
posttest diberikan setelah bermain game Mission: Save The World. Survei berlangsung
selama 5 hari setelah melakukan pretest. Sedangkan posttest diberikan ketika anak sudah
mahir dan lebih dari 5 kali memainkan game Mission: Save The World.
Tujuannya untuk mengetahui minat anak dalam mempelajari fenomena pemanasan
global yang terjadi di dunia. Pada tahap pretest yang bertujuan untuk mengetahui sejauh
mana wawasan dan pengetahuan anak usia sekolah dasar terhadap pemanasan global,
mengetahui upaya anak untuk mempelajari, serta mengetahui cara mengemas game
Mission: Save The World dapat membuat anak menjadi lebih tertarik untuk mempelajari
fenomena pemanasan global. Berikut merupakan hasil pretest yang telah dilakukan oleh
penulis.
Penulis memberikan pertanyaan mengenai media apa yang digunakan dalam
memainkan sebuah game dan hasil penelitian dapat dilihat pada Gambar 4.1 data responden
berdasarkan media yang digunakan saat bermain game.
34
Gambar 4. 1. Data Responden Berdasarkan Media Yang Digunakan Untuk Bermain Game
Dari jumlah total sebanyak 51 responden, responden yang menyukai bermain game melalui
handphone sebanyak 48 responden dengan alasan bahwa bermain melalui handphone lebih
praktis bisa dibawa kemana-mana dibandingkan responden yang menggunakan
PC/Komputer/Laptop sebayak 1 responden dan responden yang menggunakan
PSP/Xbox/Playstation sebanyak 2 responden.
Penulis memberikan pertanyaan seberapa sering responden bermain game dalam
seminggu dan hasilnya dapat dilihat pada Gambar 4.2 data responden bermain game dalam
seminggu.
Gambar 4. 2. Data Responden Bermain Game Dalam Seminggu
2%
94%
4%
Media
PC/Komputer/Laptop Handphone PSP/XBOX/Playstation
16%
61%
23%
Week
1 Kali 2 - 4 Kali 4 - 6 Kali
35
Dari jumlah total sebanyak 51 responden, responden yang paling sering bermain game 2 –
4 kali dalam seminggu sebanyak 31 responden dengan alasan bahwa bermain menghibur
dibandingkan responden yang bermain game 4 – 6 kali sebayak 12 responden dan
responden yang bermain game 1 kali sebanyak 8 responden.
Penulis memberikan pertanyaan waktu yang dihabiskan untuk bermain game dan
hasilnya dapat dilihat pada Gambar 4.3 data responden waktu yang dihabiskan untuk
memainkan game.
Gambar 4. 3. Data Responden Waktu Yang Dihabiskan Untuk Memainkan Game
Dari jumlah total sebanyak 51 responden, waktu yang dihabiskan responden untuk bermain
game paling banyak sebesar 19 responden yaitu lebih dari 30 menit atau bahkan bisa lebih
sedangkan responden yang menjawab 15- 29 menit dan kurang dari 15 menit sebanyak 16
responden.
Penulis memberikan pertanyaan jenis game yang paling sering digunakan dan
hasilnya dapat dilihat pada Gambar 4.4 data responden jenis game yang paling sering
dimainkan.
32%
31%
37%
0%
Time
< 15 Menit 15 - 29 Menit > 30 Menit
36
Gambar 4. 4. Data Responden Jenis Game Yang Paling Sering Dimainkan
Dari jumlah total sebanyak 51 responden, yang menjawab jenis game yang paling sering
dimainkan adalah strategi sebanyak 22 sedangkan yang menjawab jenis game arcade
sebanyak 16 responden dan 13 responden lain menjawab jenis game simulasi.
Penulis memberikan pertanyaan yang membuat suatu game itu menarik untuk
dimainkan dan hasilnya dapat dilihat pada Gambar 4.5 data responden tentang game yang
menarik untuk dimainkan.
Gambar 4. 5. Data Responden Bermain Game Dalam Seminggu
31%
26%
43% 43%
Type
Arcade
Simulasi
Strategi
31%
65%
4%
Interest
Tampilan Grafis Cara Bermain Musik/Sound Effect
37
Dari jumlah total sebanyak 51 responden, responden yang paling menarik dari bermain game
33 responden menjawab cara bermain (gameplay) dengan alasan bahwa gameplay yang
beragam selain tidak membuat bosan tetapi sangat menantang dibandingkan responden yang
bermain menjawab tampilan (grafis) sebayak 16 responden dan responden yang menjawab
musik (sound effect) sebanyak 2 responden.
Penulis memberikan pertanyaan sejak kapan responden mulai memainkan game dan
hasilnya dapat dilihat pada Gambar 4.6 data pengalaman responden memainkan game.
Gambar 4. 6. Data Pengalaman Responden Memainkan Game
Dari jumlah total sebanyak 51 responden, yang paling lama memainkan game sebanyak 22
responden menjawab lebih dari 5 bulan lamanya. Sedangkan yang menjawab 3 – 4 bulan
lamanya sebanyak 15 responden dan masing – masing 7 responden menjawab 1 – 2 bulan
dan kurang dari 1 bulan.
Penulis memberikan pertanyaan pernah memainkan game edukasi dan hasilnya dapat
dilihat pada Gambar 4.7 data responden pernah memainkan game edukasi.
14%
14%
29%
43%
Experience
< 1 Bulan
1 - 2 Bulan
3 - 4 Bulan
> 5 Bulan
38
Gambar 4. 7. Data Responden Yang Pernah Bermain Game Edukasi
Dari jumlah total sebanyak 51 responden, sebanyak 30 responden menjawab ya pernah
bermain game edukasi sedangkan untuk yang tidak pernah memainkan game edukasi tapi
responden tahu adanya game edukasi sebanyak 13 responden serta untuk responden yang
tidak tahu sama sekali mengenai game edukasi sebanyak 8 responden.
Penulis memberikan pertanyaan manfaat game edukasi untuk membuat proses belajar
menjadi lebih menyenangkan dan menarik dan hasilnya dapat dilihat pada Gambar 4.8.
merupakan data responden mengetahui manfaat game edukasi dalam proses belajar menjadi
lebih menyenangkan.
Gambar 4. 8. Data Responden Manfaat Game Edukasi Dalam
Proses Belajar Menjadi Lebih Menyenangkan
37%
60%
3%
Game Edukasi
Tidak tahu adanya game edukasi Tidak pernah tapi tahu Ya pernah bermain
6%
89% 5% 5%
Fun
Tidak menyenangkan Biasa saja Menyenangkan
39
Dari jumlah total sebanyak 51 responden, sebanyak 36 responden merasa senang adanya
game edukasi dan 14 responden merasa biasa saja. Sedangkan responden yang tidak merasa
menarik sebanyak 1 responden.
Penulis memberikan pertanyaan tema game edukasi yang paling sering dimainkan
dan hasilnya dapat dilihat pada Gambar 4.9 merupakan data respondentema game edukasi
yang sering dimainkan.
Gambar 4. 9. Data Responden Tema Game Edukasi Yang Sering Dimainkan
Penulis memberikan pertanyaan pengetahuan responden terhadap pemanasan global
yang berdampak pada kehidupan bumi dan hasilnya dapat dilihat pada Gambar 4.10
merupakan data pengetahuan responden terhadap pengaruh yang disebabkan oleh pemanasan
global pada bumi.
Gambar 4. 10. Data Pengetahuan Responden Terhadap Pengaruh Yang Disebabkan
Oleh Pemansan Global Pada Bumi
29%
51%
20%
Topic
Pendidikan ( menghitung, membaca, danmenghafal)
Aksi dan petualangan (mencari harta karun)
Merawat ( memelihara hewan dan menjadiseorang dokter)
94%
4% 2%
Global Warming - Know
Tidak tahu
Tahu
Sangat Tahu
40
Dari jumlah total sebanyak 51 responden, yang menjawab tidak tahu bahwa pemanasan
global berpengaruh terhadap kehidupan planet bumi senyak 42 responden, sedangkan
responden yang mengetahui sebanyak 8 responden dan 1 responden sangat tahu pengaruh
pemanasan global yang terjadi pada bumi saat ini.
Penulis memberikan pertanyaan pentingnya planet bumi bagi responden dan hasilnya
dapat dilihat pada Gambar 4.11 Data Pentingnya Planet Bumi Bagi Responden
Gambar 4. 11. Data Pentingnya Planet Bumi Bagi Responden
Dari jumlah total sebanyak 51 responden, sebanyak 43 responden merasa keberadaan planet
bumi sangat penting sedangkan 8 responden.
Penulis memberikan pertanyaan pengetahuan responden tentang pemansan global
yang mengancam kelestarian bumi dan hasilnya dapat dilihat pada Gambar 4.12 merupakan
data pengetahuan responden terhadap ancaman kelestarian bumi.
Gambar 4. 12. Data Pengetahuan Responden Terhadap Ancaman Kelestarian Bumi
84%
16%
0%
0%
Global Warming - Important
Sangat Penting Penting Tidak Penting
72%
26% 2%
0%
2%
Global Warming - Threat
Tidak tahu
Tahu
Sangat tahu
41
Dari jumlah total sebanyak 51 responden, sebanyak 36 responden menjawab tidak tahu
adanya ancaman terhadap kelestarian di bumi sedangkan yang tahu adanya ancaman
sebanyak 13 responden dan responden yang sangat mengetahui adanya rancangan ada 2
responden.
Penulis memberikan pertanyaan pengetahuan responden tentang proses pemanasan
global dan hasilnya dapat dilihat pada Gambar 4.13 merupakan data responden yang
mengetahui tentang proses pemanasan global.
Gambar 4. 13. Data Responden Yang Mengetahui Proses Pemanasan Global Di Bumi
Dari jumlah total sebanyak 51 responden, sebanyak 46 responden tidak mengetahui proses
terjadinya pemanasan global dibumi sedangkan yang tahu sebanyak 5 responden.
Penulis memberikan pertanyaan responden yang menjumpai game pemanasan global
yang terjadi di bumi dan hasilnya dapat dilihat pada Gambar 4.14 merupakan data responden
yang pernah bermain game pemanasan global.
90%
10%
0%
Global Warming - Arise
Tidak tahu
tahu
Sangat tahu
42
Gambar 4. 14. Data Responden Yang Menjumpai Game Yang Sama
Dari jumlah total sebanyak 51 responden, sebanyak 35 responden menjawab tidak pernah
menjumpai dan memainkan game yang bertemakan pemansan global sedangkan untuk
responden yang pernah tapi tidak memainkannya sebanyak 10 responden serta responden
yang pernah dan pernah memainkan game pemanasan global ada 6 responden.
Penulis memberikan pertanyaan responden materi pemanasan global dimainkan
dalam bentuk game dan hasilnya dapat dilihat pada Gambar 4.14 merupakan data responden
yang tertarik materi pemanasan global dikemas dalam bentuk game.
Gambar 4. 15. Data Responden Materi Pemanasan Global Yang Dikemas Dalam BentukGame
Dari jumlah total sebanyak 51 responden, 14 responden menjawab sangat menarik apabila
materi pemanasan global dikemas dalam bentuk game sedangkan 36 responden menjawab
menarik dan hanya 1 responden yang menjawab tidak menarik.
69%
19% 12%
12%
Global Warming - Game
Tidak pernah Pernah tapi tidak memainkannya
Pernah dan memainkannya
2%
71% 27%
0%
27%
Global Warming - Intantion
Tidak menarik
Menarik
Sangat Menarik
43
4.2 Gameplay Mission: Save The World
Game Mission: Save The World merupakan jenis game edukasi yang khusus
dirancang untuk mendidik anak sekolah dasar yang ada di Kabupaten Semarang mengenai
betapa pentingnya mencintai, mengajak dan menjaga lingkungan melalui beragam
gameplay yang sangat menyenangkan serta sekaligus menanamkan secara kokoh dan
kecerdasan naturalis yaitu dengan menumbuhkan kemampuan anak mengenal tanaman,
hewan, serta bagian lain dari alam semesta. Game ini dibuat dengan menggunakan software
engine Unity 2 Dimensi dengan ukuran game kurang lebih yaitu 50 MB. Game ini dapat
dimainkan pada platform Android.
Didalam game Mission: Save The World terdapat 7 stage dengan gameplayatau cara
bermain yang berbeda - beda. Sedangkan untuk alur game Mission: Save The World
dimulai dari tampilnya logo Jurusan Game Technology Fakultas Ilmu Komputer
Universitas Katolik Soegijapranata Semarang dilanjutkan tampil proses loading game dan
judul game atau menu home. Pada menu home permainan akan dimulai.
Tantangan dari game Mission: Save The World ini model permainan berantai jadi
tidak semua stage dapat langsung dimainkan. Stage yang ada didalam game ini saling
berhubungan untuk membuka stage lain dengan menggunakan sistem unlock hingga
sampai stage yang terkhir. Apabila stage sudah terbuka semua pemain bebas memilih
untuk bermain di stage manapun. Disetiap stage terdapat reward game yang memiliki
informasi mendidik dan bermanfaat serta menambah wawasan baru untukpemain.
44
4.3 Alur Game Mission: Save The World
Gambar 4.16 merupakan alur game Mission: Save The World:
Gambar 4. 16. Alur Game Mission: Save The World
4.4 Desain Asset Game
Setelah menyelesaikan alur game langkah selanjutnya yaitu membuat desain asset
game Mission: Save The World. Software yang digunakan untuk membuat asset adalah
Adobe Ilustrator untuk membuat asset berupa vector sedangkan Photoshop untuk
mengolah vector menjadi bitmap. Berikut merupakan hasil dari pembuatan asset game:
4.3.1 Desain Karakter Game
Didalam suatu game, karakter atau yang sering disebut player memiliki
peran yang sangat penting untuk membuat game menjadi lebih menarik dan lebih
hidup. Pada game ini penulis memilih karakter kartun merupakan ilustrasi gambar
sifatnya menyederhanakan objek nyata dan hanya mengambil struktur – struktur
dasar anatomi dari sebuah objek/benda [46]. Berikut merupakan Tabel 4.1
merupakan karakter yang ada didalam game Mission: Save The World.
45
Tabel 4. 1. Karakter yang ada didalam game Mission : Save The World
Karakter tersebut bernama matahari. Matahari
merupkan karakter ikonik yang berada di stage 1 yaitu
tata surya. Matahari merupakan pusat dari tata surya.
Sumber energi utama kelangsungan hidup di planet
bumi yaitu matahari yang telah memancarkan
radiasinya hingga menembus bagian lapisan atmosefer
pada planet bumi
Karakter tersebut bernama Bumi. Bumi merupakan
karakter ikonik yang menjadi gerbang untuk masuk
kedalam stage 2 -7. Bumi merupakan planet yang
paling beruntung diantara kedelapan planet. Karena
hanya di Bumi tumbuh-tumbuhan, hewan dan manusia
dapat hidup dan bernapas.
Karakter tersebut bernama Popo. Popo merupakan
karakter ikonik dari Hutan Amazon Brazil yang ada
didalam stage 2. Popo memiliki peran penting di
Bumi. Tugas popo adalah membuat oksigen dan
menjaga udara agar tetap bersih dan sehat.
Karakter tersebut merupakan si pemburu hewan satwa
dan penebang pohon liar. Karakter ini muncul pada
stage 2 dan 7. Pemilihan karakter ini untuk
menyerukan kepada pemain bahwa kita perlu menjaga
hutan dan satwa dari orang yang tidak bertanggung
jawab dan merusak kelestarian di Bumi.
46
Lanjutan Table 4. 1.Karakter yang ada didalam game Mission : Save The World
Karakter tersebut bernama Natan. Natan merupakan
aktivis muda yang bertempat tinggal di kota dengan
tingkat polusi yang tinggi yaitu di Kota Zabul, Iran
ada di dalam stage 3. Perlunya menjaga kesehatan
tubuh dengan memakai masker karena polusi sangat
berbahaya bagi tubuh manusia. Dengan ukuran yang
sangat kecil polusi dapat masuk ke dalam paru – paru
manusia.
Karakter tersebut bernama Alga dan Karang yang
berupakan ikonik dari Australia yaitu stage 4. Alga
dan Karang terancam pemutihan akibat dari
meningkatnya suhu air laut. Apabila peningkatan
suhu terus terjadi maka karang yang ada dilaut dapat
rusak dan tidak berwarna lagi.
Karakter tersebut bernama air panas yang menyerang
alga dan karang di laut.
Karakter tersebut bernama Trash. Trash merupakan
ikonik dari Indonesia yaitu stage 5. Trash merupakan
suatu wadah untuk menampung sampah baik plastik,
botol, kertas, makanan dan lainnya. Diharapkan
dengan adanya Trash manusia tidak membuang
sampah sembarangan. Atau bahkan dapat mendaur
ulang sampah menjadi kreatifitas seperti misalnya
mobil – mobilan dari botol bekas.
47
Lanjutan Table 4. 1. Karakter yang ada didalam game Mission : Save The World
Karakter tersebut bernama Alena. Alena merupakan
aktivis muda dari Denmark yang ada didalam stage
6. Alena senang sekali bersepeda karena selain
bermanfaat pertumbuhannya juga dapat menghemat
energi sehingga akan mengurangi terjadinya
pemanasan global.
Karakter ini bernama Eggy. Eggy merupakan
karakter ikonik merupakansatwa beruang kutub
yang harus dilindungi dan dijaga yang ada di laut
Antartika. Daratan es terus mencair dikarenakan
peningkatan suhu pada permukaan bumi atau
pemanasan global, menyebabkan Eggy terombang
ambing di lautan dengan serpihan es yang ada dan
sulit menjangkau mangsa. Selain itu upaya dalam
mengurangi konflik antara manusia dan berung,
mendesak penghentian dalam pemburuan beruang
kutub “panen penghidupan” atau subsistence
harvestyang legal.
4.3.2 Animasi Karakter Game
Dalam game ini animasi terdiri dari serangkaian gambar yang dibuat
secara berurutan dan berulang – ulang kemudian dimainkan hingga menjadi ilusi
yang bergerak [47]. Untuk membuat animasi karakter pada game Mission: Save
The World yaitu dengan menggunakan software Adobe Ilustrator serta dibutuhkan
pengeditan menggunakan Photoshop untuk mengatur posisi aimasi agar tetap
stabil. Selanjutnya gambar disimpan dalam format PNG. Untuk mejalankan
animasi masukkan gambarkedalam asset unity. Gambar 4.17 merupakan karakter
yang dianimasikan pada game Mission: Save The World:
48
Gambar 4. 17.Karakter Game Mission: Save The World
4.3.3 Latar Belakang Game (Background)
Background merupakan suatu lokasi atau setting dalam semua tampilan
suatu kegiatan yang sedang berlangsung [47]. Secara umum background dibuat
secara sederhana atau bahkan rumit sesuai dengan konsep dan tujuan cerita yang
dibuat didalam dunia animasi background dibuat secara khusus yaitu detail ukur
dan rancangan background harus disesuaikan dengan karakter yang ada misalnya
perbandingan ukuran, serta dalam pewarnaan keseluruhan. Background game
Mission: Save The World dibuat untuk menciptakan dampak emosional yang
berurutan pada setiap framenya sehingga menimbulkan rasa kepercayaan yang
49
akan terjadi pada sebuah aksi peran player dalam sebuah game. Berikut latar
belakang atau background yang ada pada game Mission: Save The World yaitu:
a. Gambar 4.18 merupakan background stage 1 dengan konsep Tata Surya,
menciptakan suasana diluar angkasa.
Gambar 4. 18. Background Stage 1
b. Gambar 4.19 merupakan background stage 2 dengan konsep Deforestasi,
menciptakan suasana didalam hutan Amazon yang hijau dan rindang.
Gambar 4. 19. Backgroud Stage 2
c. Gambar 4.20 merupakan background stage 3 dengan konsep Kota
Berpolusi, menciptakan suasana ditengah Kota Zabul Iran, yang terkena
polusi udara yang buruk.
Gambar 4. 20. Background Stage 3
50
d. Gambar 4.21 merupakan background stage 4 dengan konsep Pemutihan
Karang, menciptakan suasana didasar laut dan terumbu karang yang
berwarna warni serta biota laut lainya.
Gambar 4. 21. Background Stage 4
e. Gambar 4.22 merupakan background stage 5 dengan konsep Daur Ulang,
menciptakan suasana dipesisir pantai yang bersih dan bebas dari sampah.
Gambar 4. 22. Background Stage 5
f. Gambar 4.23 merupakan background stage 6 dengan konsep Hemat
Energi, menciptakan suasana tengah kota yang hijau, udara segar dan
bebas dari polusi.
Gambar 4. 23. Background Stage 6
51
g. Gambar 4.24 merupakan background stage 7 dengan Konsep Aksi
Penyelamatan Beruang Kutub, menciptakan suasana daratan dan lautan es
yang ada di Antartika.
Gambar 4. 24. Background Stage 7
4.3.4 GUI atau Grapical User Interface
Pada sebuah game GUI adalah perantara antara pemain dengan komputer.
GUI berperan penting dalam berinteraksi dengan sistem pada aplikasi game dalam
betuk icon. Tabel 4.2 merupakan GUI yang terdapat pada game Mission: Save
The World.
Tabel 4. 2. GUI Game Mission: Save The World
Tombol next dan back pada game ini berfungsi untuk
berpindah ke Scene selanjutny dan kembali pada Scene
sebelumnya.
Tombol retry pada game ini berfungsi untuk mengulang
kembali kesemula pada Scene yang sama.
Tombol pause pada game ini berfungsi untuk
menghentikan aktivitas yang ada pada Scene.
Tombol info pada game ini berfungsi untuk memberikan
informasi kepada pemain tentang isi dari game ini.
52
Tombol reward pada game ini berfungsi untuk
memunculkan informasi dan benda ikonik dari setiap
stage.
Tombol koleksi pada game ini berfungsi untuk
menampilkan ikonik –ikonik yang di dapat pada setiap
stage. Didalam ikonik tersebut berisi informasi yang
merupakan reward game pada setiap stage.
Tombol keluar pada game ini berfungsi untuk menutup
aplikasi.
Tombol lock pada game ini berfungsi untuk mengunci
stage atau reward karena belum memenuhi pencapaian
misi pada game.
Star pada game ini berfungi untuk penanda pencapaian
pada skor game.
4.3.5 Aset Pendukung Game
Pada suatu game aset pendukung memiliki peran penting dalam
menciptakan suatu game yang menarik untuk dimainkan. Berikut elemen –
elemen pendukung yang berupa asset game Mission: Save The World yaitu:
a. Musuh (Enemy) Mengurangi Skor
Game yang mengangkat tema pemanasan global maka pada game
Mission: Save The World memilih karakter yang menyebabkan atau memicu
terjadinya pemanasan global. Seperti penebang pohon liar dan pemburu satwa,
serpihan – serpihan es yang terombang – ambing di tengah laut, air panas
yang menyerang terumbu karang, cauaca ekstrim sehingga membetuk badai
pasir yang menyerang kota, tumpukan sampah akibat dari pembuangan
53
sampah sembarangan, mobil – mobilan yang dapat mengeluarkan gas yang
berdampak terhadap adanya pemanasan global. Gambar 4.25 merupakan
enemy atau musuh yang terdapat pada game Mission: Save The World yaitu:
Gambar 4. 25. Enemy yang terdapat pada game "Mission: Save The World"
b. Aset Menambah Skor
Pada game Mission: Save The World untuk menambah skor penulis
memilih koin, masker penutup hidung, ikan makanan beruang, gergaji, kayu
dan sampah yang dibuang ditempat sampah. Berikut merupakan Gambar 4.26
asset untuk menambah skor :
Gambar 4. 26. Asset poin game Mission: Save The World
54
4.5 Pembuatan Pemrograman Game
Didalam suatu game pemrograman game memilki peran yang sangat penting dalam
proses pembuatan game yaitu dengan cara menggabungkan semua elemen yang sudah di
desain seperti karakter, background, asset pendukung, GUI dan sound. Elemen tersebu
digabungkan melalui game Engine Unity hingga menjadi sebuah aplikasi game yang dapat
digunakan dan media pembelajaran interaktif. Dalam proses pengerjaan pembuatan script
memilih bahasa C# Monodevelop yang tersedia pada game engine unity. Berikut
merupakan Script yang terdapat didalam game Mission: Save The World:
4.4.1 Script Splash Screen
Pada Script splash screen tampilan pembuka game Mission: Save The
World berfungsi untuk menampilkan logo Program Studi Game Technology
Universitas Katolik Soegijapranata, Semarang. Gambar 4.27 menunjukkan
tampilan splash screen.
Gambar 4. 27. Splash Screen
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Script_SplashUnika : MonoBehaviour {
public float time;
void Start () {
StartCoroutine ("Logo_Unika");
}
private IEnumerator Logo_Unika () {
yield return new WaitForSeconds(time);
Destroy (this.gameObject);
Application.LoadLevel("Splash_Loading");
}
}
Kode Program 4. 1. Splash Screen
55
Script diatas merupakan perintah yang berfungsi untuk menjalankan satu
kali ketika aplikasi atau program dijalankan, seperti pada barisan fungsi Void
Start untuk mengeksekusi dan Start Coroutine berfungsi untuk memanggil logo
unika yang akan ditampilkan. Sedangkan yield return new WaitForSeconds
berfungsi untuk memberikan waktu atau jeda seberapa lama untuk berpindah
masuk ke tahap atau Scene selanjutnya.
4.4.2 Script Loading Screen
Gambar 4.28 menampilkan logo dan identitas pembuat game dan
persiapan untuk dapat berpindah ke menu home dari game Mission: Save The
World.
Gambar 4. 28. Loading Screen
Untuk membuat Loading Screen diperlukan script seperti dibawah ini:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Script_SplashLoading : MonoBehaviour {
public float loadingTime;
public Image loading_bar;
public Text Persen;
void Start () {
loading_bar.fillAmount = 0;
}
void Update () {
if(loading_bar.fillAmount <=0.200){
loading_bar.fillAmount += 0.5f / loadingTime * Time.deltaTime;
}
if(loading_bar.fillAmount >=0.200 && loading_bar.fillAmount <=0.544){
loading_bar.fillAmount += 1f / loadingTime * Time.deltaTime;
}
if(loading_bar.fillAmount >=0.544){
loading_bar.fillAmount += 3f / loadingTime * Time.deltaTime;
}
if(loading_bar.fillAmount ==1.0f){
Application.LoadLevel("Home");
56
}
Persen.text = (loading_bar.fillAmount * 100).ToString ("f0");
}}
Kode Program 4. 2. Loading Screen
4.4.3 Script Menu Home
Pada Scene menu home ditunjukkan pada Gambar 4.29 menampilakan judul
game, tombol pengaturan dan tombol play untuk bersiap memainkan game
Mission: Save The World.
Gambar 4. 29. Tampilan home Mission: Save The World
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Script_Home : MonoBehaviour {
public Canvas Popup_Pengaturan;
public Canvas Popup_Informasi;
public bool tampil = false;
public void Select_GameMission(int cek_selectgame){
Application.LoadLevel ("Select_Game");
}
public void TampilPopup_Pengaturan(){
if (tampil == false) {
tampil = true;
Popup_Pengaturan.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_Pengaturan.enabled = false;
}
}
public void TampilPopup_Informasi(){
if (tampil == false) {
tampil = true;
Popup_Informasi.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_Informasi.enabled = false;
}
}
public void Exit_Game(int cek_exit){
57
Application.Quit ();
}}
Kode Program 4. 3. Menu Home
Script diatas merupakan Script home untuk mengatur tombol play untuk
masuk kemenu select game dengan fungsi public void Select_GameMission
(int cek_selectgame). Sedangkan pada tombol pengaturan berfungsi untuk
menampilkan pop-up apakah pemain ingin berhenti ataumelihat info yang
berkaitan tentang game dengan fungsi public void Tampil Popup_Pengaturan()
sedangkan untuk fungsi berhenti dapat dilihat dari fungsi public
void Exit_Game(int cek_exit).
4.4.4 Script Select Game
Pada scene ini terdapat dua jenis menu yang berbentuk tombol yaitu
matahari dan menu rahasia. Didalam tombol matahari terdapat karakter matahari
yang telah dianimasikan dan sedangkan di tombol menu rahasia terdapat sistem
unlock disertai gambar kunci. Selain itu terdapat tombol koleksi dan tombol
home. Ditunjukkan pada Gambar 4.30 merupakan tampilan dari menu select
game.
Gambar 4. 30. Select Game
using UnityEngine;
using System.Collections;
public class Script_SelectGame : MonoBehaviour {
public Canvas Popup_gembokbumi;
public bool tampil = false;
public void Back_Home(int Back_Home){
Application.LoadLevel ("Home");
}
public void Pilih_Matahari(int Cek_Matahari){
58
Application.LoadLevel ("Misi_TataSurya");
}
public void Pilih_Bumi(int Cek_Bumi){
Application.LoadLevel ("Misi_Bumi");
}
public void KOLEKSI(int KOLEKSI){
Application.LoadLevel ("Scene_Koleksi");
}
public void TampilPopup_gembokbumi(){
if (tampil == false) {
tampil = true;
Popup_gembokbumi.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_gembokbumi.enabled = false;
} }}
Kode Program 4. 4. Select Game dan Memanggil Popup
Script diatas merupakan Script Select Game digunakan untuk mengatur 4
tombol. Dapat dilihat pada fungsi public void Back_Home (int Back_Home)
ketika pemain menekan tombol home maka permainan akan kembali ke
scenehome. Fungsi public void Pilih_Matahari (int Cek_Matahari) ketika pemain
menekan tombol matahari maka pemain akan masuk ke misi tata surya. Fungsi
public void Pilih_Bumi (int Cek_Bumi) akan aktif ketika sistem unlock telah
terbuka dan fungsi ini digunakan untuk masuk ke misi cintai bumi. Apabila sistem
unlock masih terkunci maka akan muncul peringatan untuk memanggilnya dapat
dilihat pada fungsi public void Tampil Popup_gembokbumi() pada Gambar 4.31
merupakan tampilan sistem popup informasi.
Gambar 4. 31. Popup Informasi Stage 1
Untuk dapat membuka tombol rahasia pemain harus menyelesaikan misi
tata surya terlebih dahulu. Sedangkan untuk fungsi public void KOLEKSI
59
(int KOLEKSI) digunakan ketika pemain menekan tombol koleksi scene akan
berpindah ke scene koleksi.
4.4.5 Script Sistem Unlock Pada Tombol Rahasia
Pada script ini berfungsi untuk menjalankan sistem unlock yang semula
terkunci hanya dapat menampilkan popup berubah menjadi tombol yang dapat
berpindah scene sesuai dengan scene yang di tuju. Misalnya sistem unlock pada
scene select game setelah misi tercapai maka kunci akan terbuka pemain akan
dengan bebas memilih menu game apa saja. Tampak pada Gambar 4.32 tampilan
menu yang semula terkunci menjadi terbuka.
Gambar 4. 32. Tampilan menu game
using UnityEngine;
using System.Collections;
public class Script_BukaKunci : MonoBehaviour {
int Bumi_BukaKunci;
public GameObject kunciTutup, kunciBuka;
void Start () {
Bumi_BukaKunci = PlayerPrefs.GetInt ("CintaiBumi");
if(Bumi_BukaKunci==1){
kunciTutup.SetActive (false);
kunciBuka.SetActive (true);
}}}
Kode Program 4. 5. Unlock Button
Pada dasarmya Script diatas terdiri dari dua Game Object gambar yaitu
kunciTutup dan kunciBuka. Kunci tutup merupakan game object yang sudah
ditampilkan dari awal dengen gambar gembok. Buka kunci berada dibalik
gembok namun dari awal tombol harus di setting dalam kondisi mati (false)
sedangkan kunci buka akan tampil (true) ketika permainan sudah terpenuhi.
60
Dapat dilihat PlayerPrefs.GetInt ("CintaiBumi") merupakan fungsi untuk
memanggil pada script yang lain agar kunci terbuka.
4.4.6 Script Misi Matahari Stage 1 (Tata Surya)
Pada Scene ini berisi panel materi tentang tata surya, tombol play dan
home. Ditunjukkan pada Gambar 4.33 merupakan tampilan menu misi tata surya
stage 1.
Gambar 4. 33.Tampilan Misi Tata Surya
using UnityEngine;
using System.Collections;
public class Script_MisiMatahari : MonoBehaviour {
public void Tutor_Matahari(int play_TutorMatahari){
Application.LoadLevel ("Tutor_Matahari");
}
public void Back_SelectGame(int back_selectgame){
Application.LoadLevel ("Select_Game");
}}
Kode Program 4. 6. Menu Misi Tata Surya
Dapat dilihat pada script diatas bahwa fungsi public
void Tutor_Matahari (int play_TutorMatahari) ketika pemain menekan tombol
play scene akan berubah menjadi scene tutorial game tata surya. Fungsi public
void Back_SelectGame (int back_selectgame) berada pada tombol home maka
ketika diklik scene akan kembali ke tampilan home.
4.4.7 Script Tutorial Stage 1 (Tata Surya)
Pada scene ini akan ditampilkan animasi cara bermain pada stage 1 tata
surya. Dengan menggunakan animasi diharapkan bahwa pemain akan dengan
mudah memahami cara bermainnya. Selain animasi terdapat tombol play dan
close. Gambar 4.34. merupakan tampilan tutorial stage 1 tata surya.
61
Gambar 4. 34. Tampilan tutorial tata surya
using UnityEngine;
using System.Collections;
public class Script_TutorMatahari : MonoBehaviour {
public void PlayGame_Matahari(int play_GameMatahari){
Application.LoadLevel ("PlayGame_Matahari");
}
public void Back_MisiMatahari(int back_MisiMatahari){
Application.LoadLevel ("Misi_Matahari");
}}
Kode Program 4. 7. Tutorial Tata Surya
Script ini digunakan untuk memberikan aksi pada tombol play dengan
fungsi public void PlayGame_Matahari (int play_GameMatahari) yang artinya
ketika pemain menekan tombol play, scene akan berubah ke stage 1 arena game.
Sedangkan fungsi public void Back_MisiMatahari (int back_MisiMatahari) ketika
di klik maka game akan kembali pada scene misi matahari.
4.4.8 Script Play Stage 1 (Tata Surya)
Pada stage 1 pemain harus dapat berhasil menebak nama – nama planet
dengan benar. Tantangan dari stage 1 adalah jawaban planet acak. Cara
bermainnya adalah drag and drop. Apabila pemain tidak dapat menyelesaikan
misi ini maka permainan tidak dapat berlanjut. Pada stage 1 sebagai penentu
untuk membuka menu rahasia yang ada pada selectgame dengan ketentuan
pemain harus mendapatkan bintang 3. Selain itu bintang 3 berfungsi untuk
membuka reward atau kotak hadiah berupa informasi yang berhubungan dengan
tata surya. Untuk mendapatkan poin pemain harus menebak dengan benar, poin
yang didapat untuk 1 planet yaitu 10 poin, bonus poin yaitu 20 poin, jadi dalam
stage 1 total poin yang didapat yaitu 100 poin. Pada kanan atas terdapat tombol
pause yang berfungsi untuk memberikan jeda permainan ketika tombol pause
62
ditekan maka akan muncul popup yang di dalamnya terdapat tombol play untuk
bermain kembali atau tombol home untuk berhenti dari permainan. Sedangkan
tombol retry untuk mengulangi permainan. Seperti yang ditunjukkan pada
Gambar 4.35.
Gambar 4. 35. Tampilan Stage 1 a) Playstage 1 b) Popupgameover
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class ManageDragAndDrop : MonoBehaviour {
public GameObject PlaceHolder;
public string Planet = "planet";
public string Tempat_planet = "kolom_planet";
Vector3 initiallposisi;
private Script_AddScore ScorPlanet;
void Start(){
initiallposisi = gameObject.transform.position;
ScorPlanet = FindObjectOfType<Script_AddScore> ();
}
public void drag(){
GameObject.Find (Planet).transform.position = Input.mousePosition;
}
public void drop(){
PlaceHolder = GameObject.Find (Tempat_planet);
float distance = Vector3.Distance (GameObject.Find (Planet).transform.position, PlaceHolder
.transform.position);
if (distance < 35) {
if (PlaceHolder.name == Tempat_planet) {
GameObject.Find (Planet).transform.position = PlaceHolder.transform.position;
GameObject.Find (Planet).transform.localScale = PlaceHolder.transform.localScale;
ScorPlanet.AddScore ();
} else {
GameObject.Find (Planet).transform.position = initiallposisi;
}
} else {
GameObject.Find (Planet).transform.position = initiallposisi;
} }
public void drop2(){
PlaceHolder = GameObject.Find (Tempat_planet);
float distance = Vector3.Distance (GameObject.Find (Planet).transform.position, PlaceHolder
63
.transform.position);
if (distance < 35) {
if (PlaceHolder.name == Tempat_planet) {
GameObject.Find (Planet).transform.position = PlaceHolder.transform.position;
GameObject.Find (Planet).transform.localScale = PlaceHolder.transform.localScale;
ScorPlanet.AddScore2 ();
} else {
GameObject.Find (Planet).transform.position = initiallposisi;
}} else {
GameObject.Find (Planet).transform.position = initiallposisi;
} }}
Kode Program 4. 8. Drag and Drop Stage 1 Tata Surya
Script diatas merupakan script drag and drop, pada fungsi drag()
digunakan ketika pemain memilih jawaban kolom jawaban dengan cara tekan dan
seret akan bergerak mengikuti mouse pointer. Jika dilepas dan tidak sesuai
dengan jawaban yang benar, jawaban akan kembali ketempat semula. Fungsi
drop() Jika jawaban itu benar jawaban akan menyesuaikan diri sesuai kolom
jawaban yang sudah ditentukan menambah poin dengan fungsi AddScore().
4.4.9 Script Reward Stage 1 (Tata Surya)
Pada scene ini menampilkan informasi tentang planet – planet yang ada di
susunan tata surya seperti Merkurius, Venus, Bumi, Mars, Saturnus, Uranus, dan
Neptunus. Pada scene ini untuk melihat jelas informasi yang disampaikan
menggunakan bantuan popup agar anak dapat dengan mudah membaca dan
memahami materi yang disampaikan. Tampilan reward game ditunjukkan pada
Gambar 4.36. Tombol close digunakan untuk menutup popup. Tombol koleksi
digunakan untuk melihat koleksi yang terkumpul. Tombol next digunakan untuk
kemisi cintai bumi.
Gambar 4. 36. Tampilan reward game. a) Reward Susunan Tatasurya b) Popup Informasi
Planet
64
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Script_Reward TataSurya : MonoBehaviour {
public Canvas Popup_InfoMERKURIUS;
public Canvas Popup_InfoVENUS;
public Canvas Popup_InfoBUMI;
public Canvas Popup_InfoMARS;
public Canvas Popup_InfoJUPITER;
public Canvas Popup_InfoSATURNUS;
public Canvas Popup_InfoURANUS;
public Canvas Popup_InfoNEPTUNUS;
public Canvas Popup_InfoPLUTO;
public bool tampil = false;
public void MisiBumi(int misibumi){
Application.LoadLevel ("Misi_Bumi");
}
public void Back_koleksi(int back_koleksi){
Application.LoadLevel ("Scene_Koleksi");
}
public void TampilPopup_Merkurius(){
if (tampil == false) {
tampil = true;
Popup_InfoMERKURIUS.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoMERKURIUS.enabled = false;
}
}
public void TampilPopup_Venus(){
if (tampil == false) {
tampil = true;
Popup_InfoVENUS.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoVENUS.enabled = false;
}
}
public void TampilPopup_Bumi(){
if (tampil == false) {
tampil = true;
Popup_InfoBUMI.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoBUMI.enabled = false;
}
}
public void TampilPopup_Mars(){
if (tampil == false) {
tampil = true;
Popup_InfoMARS.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoMARS.enabled = false;
}
}
65
public void TampilPopup_Jupiter(){
if (tampil == false) {
tampil = true;
Popup_InfoJUPITER.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoJUPITER.enabled = false;
}
}
public void TampilPopup_Saturnus(){
if (tampil == false) {
tampil = true;
Popup_InfoSATURNUS.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoSATURNUS.enabled = false;
}
}
public void TampilPopup_Uranus(){
if (tampil == false) {
tampil = true;
Popup_InfoURANUS.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoURANUS.enabled = false;
}
}
public void TampilPopup_Neptunus(){
if (tampil == false) {
tampil = true;
Popup_InfoNEPTUNUS.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoNEPTUNUS.enabled = false;
}
}
public void TampilPopup_Pluto(){
if (tampil == false) {
tampil = true;
Popup_InfoPLUTO.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_InfoPLUTO.enabled = false;
}
}
}
Kode Program 4. 9. Reward Tata Surya
Script diatas merupakan fungsi untuk menampilkan elemen-elemen yang
terdapat pada scene reward tata surya. Fungsi public void MisiBumi
(int misibumi) artinya ketika tombol next ditekan scene akan terus lanjut ke tahap
66
scene Misi Bumi. Public void Back_koleksi (int back_koleksi) berfungsi untuk
masuk ke menu scene koleksi.
Untuk memanggil popup informasi tentang planet menggunakan fungsi
public void Tampil Popup_Merkurius(), public void Tampil Popup_Venus(),
public void Tampil Popup_Bumi(), public void Tampil Popup_Mars(), public
void Tampil Popup_Saturnus(), public void Tampil Popup_Uranus(), public void
Tampil Popup_Neptunus().
4.4.10 Script Misi Bumi
Script ini digunakan untuk menampilkan misi cintai bumi. Tampilan misi
cintai bumi ditunjukkan Gambar 4.36. Pada scene misi cintai bumi terdapat panel
yang berisi materi mengenai bumi, untuk memperjelas gambaran seperti apa bumi
disamping materi terdapat animasi bumi yang sedang bergerak memutar dan
terdapat tombol home serta tombol play.
Gambar 4. 37. Tampilan Misi Cintai Bumi
using UnityEngine;
using System.Collections;
public class Script_MisiBumi : MonoBehaviour {
public void Map_Bumi(int play_MapBumi){
Application.LoadLevel ("PetaBumi");
}
public void Back_SelectGame(int back_selectgame){
Application.LoadLevel ("Select_Game");
}
}
Kode Program 4. 10. Misi Cintai Bumi
Script diatas terdapat dua fungsi yaitu public void Map_Bumi
(int play_MapBumi) berpindah pada scene peta bumi, sedangkan public void
67
Back_SelectGame (int back_selectgame) kembali ke menu select game matahari
atau bumi.
4.4.11 Script Isu Dunia
Pada Scene ini menampilkan isu pemanasan global yang terjadi di
dunia. Isu pertama dimulai di Brazil, selain Brazil negara lainya menggunakan
sistem unlock. Jadi tombol akan terkunci. Menu isu dunia dapat dilihat pada
Gambar 4.38 Pemain akan dibantu dengan popup informasi misi apa saja yang
harus diselesaikan terlebih dahulu untuk membuka negara selanjutnya.Karena
model permainan ini berantai jadi satu stage, mempengaruhi stage yang lain.
Ketika semua stage sudah terbuka maka pemain akan bebas memainkan pada
stage mana saja.
Gambar 4. 38. Menu Misi Bumi a) Menu Isu Dunia b) Popup Informasi
using UnityEngine;
using System.Collections;
public class Script_PetaBumi : MonoBehaviour {
public Canvas Popup_gembokIndo;
public Canvas Popup_gembokIran;
public Canvas Popup_gembokAus;
public Canvas Popup_gembokDenmark;
public Canvas Popup_gembokAntartika;
public Canvas Popup_finish;
public bool tampil = false;
public void Back_SelectGame(int back_selectgame){
Application.LoadLevel ("Select_Game");
}
public void klik_misiindonesia(int klik_misiindonesia){
Application.LoadLevel ("Misi_Indonesia");
}
public void klik_misibrazil(int klik_misibrazil){
Application.LoadLevel ("Misi_Brazil");
}
public void klik_misiiran(int klik_misiiran){
Application.LoadLevel ("Misi_Iran");
68
}
public void klik_misiaustralia(int klik_misiaustralia){
Application.LoadLevel ("Misi_Australia");
}
public void klik_misiantartika(int klik_misiantartika){
Application.LoadLevel ("Misi_Antartika");
}
public void klik_misidenmark(int klik_misidenmark){
Application.LoadLevel ("Misi_Denmark");
}
public void TampilPopup_gembokIndo(){
if (tampil == false) {
tampil = true;
Popup_gembokIndo.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_gembokIndo.enabled = false;
}
}
public void TampilPopup_gembokIran(){
if (tampil == false) {
tampil = true;
Popup_gembokIran.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_gembokIran.enabled = false;
}
}
public void TampilPopup_gembokAus(){
if (tampil == false) {
tampil = true;
Popup_gembokAus.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_gembokAus.enabled = false;
}
}
public void TampilPopup_gembokDenmark(){
if (tampil == false) {
tampil = true;
Popup_gembokDenmark.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_gembokDenmark.enabled = false;
}
}
public void TampilPopup_gembokAntartika(){
if (tampil == false) {
tampil = true;
Popup_gembokAntartika.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_gembokAntartika.enabled = false;
}
}
69
public void TampilPopup_finish(){
if (tampil == false) {
tampil = true;
Popup_finish.enabled = true;
}else if(tampil==true){
tampil = false;
Popup_finish.enabled = false;
} }}
Kode Program 4. 11. Menu Isu Dunia
Script diatas merupkan script isu dunia yang berisikan tombol untuk
masuk kepermainan stage 2 - 7 dengan urutannya yaitu dimulai dari Brazil, Iran,
Australia, Indonesia, Denmark dan berakhir pada Antartika dengan fungsi public
void klik_misibrazil (int klik_misibrazil). Ditengahnya yaitu tokoh utama bumi
yang bergerak. Pada scene ini apabila kunci belum terbuka akan tampilkan poup
informasi yang harus dicapai.
4.4.12 Script Misi Brazil Stage 2 (Deforestasi)
Pada scene misi Brazil ini, menampilkan panel materi mengenai isu
deforestasi atau penggundulan hutan yang mengancam keberadaan hutan yang
menjadi paru-paru dunia.Selain itu terdapat tombol play dan tombol home.
Disamping materi untuk menambah ketertarikan anak untuk membaca yaitu
memberikan animasi pohon yang sedang menari-nari ditunjukkan pada Gambar
4.39.
Gambar 4. 39. Tampilan Misi Deforestasi
using UnityEngine;
using System.Collections;
public class Script_MisiBrazil : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("PetaBumi");
}
70
public void Tutor_GameBrazil(int tutor_gamebrazil){
Application.LoadLevel ("tutor_Brazil");
}
}
Kode Program 4. 12. Menu Misi Deforestasi
Script diatas memilki dua fungsi yaitu public void Back_MapBumi
(int back_mapbumi) artinya fungsi ini untuk mengembalikan kembali ke menu isu
dunia sedangkan public void Tutor_GameBrazil (int tutor_gamebrazil) artinya
fungsi ini akan berlanjut pada scene tutor_Brazil.
4.4.13 Script Tutorial Stage 2 (Deforestasi)
Pada scene tutorial menampilkan animasi bergerak cara bermain stage
Brazil. Gambar 4.40 merupakan tampilan tutorial stage deforestasi. Dengan
animasi diharapkan dapat memudahkan anak dalam memahami cara bermainnya
dengan mudah. Selain itu terdapat tombol play dan tombol close.
Gambar 4. 40. Tutorial Deforestasi
using UnityEngine;
using System.Collections;
public class Script_tutorialbrazil : MonoBehaviour {
public void Play_GameBrazil(int play_GameBrazil){
Application.LoadLevel ("Play_Brazil");
}
public void Back_MisiBrazil(int back_MisiBrazil){
Application.LoadLevel ("Misi_Brazil");
}
}
Kode Program 4. 13. Tutorial Deforestasi
Script diatas meilki dua fungsi yaitu public void Play_GameBrazil
(int play_GameBrazil) artinya ketika menekan tombol play akan berpindah ke
71
Scene Play_Brazil. Sedangkan fungsi public void Back_MisiBrazil
(int back_MisiBrazil) artinya ketika tombol close ditekan maka scene akan
kembali ke Misi_Brazil.
4.4.14 Script Play Stage 2 (Deforestasi)
Pada scene play stage 2 menampilkan permainan Brazil Gambar 4.41.
Dengan latar belakang pohon yang menari dan rumput yang digunakan penebang
pohon dan satwa bersembunyi dan menggunakan sistem random untuk muncul
dan hilang. Pada bagian menu bar terdapat poin, judul stage, tombol pause,
tombol retry dan timer. Misi permainan ini adalah selama 60 detik dan harus
mencapai 100 poin untuk dapat membuka stage selanjutnya.
Gambar 4. 41. Play Stage 2 Deforestasi
Script dibawah merupakan cara memunculkan enemy secara random dan
enemy akan hilang ketika di tap dan akan menambah poin pada permainan:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class hunter_Script : MonoBehaviour {
Ray ray_hunter;
public static Vector3 position_hunter;
public GameObject hunter;
float speed_hunter = 5;
private bool tap_hunter;
public static bool down_hunter;
private point_brazil addscore;
private point_brazil aktivGameOver;
private point_brazil star;
void Start () {
position_hunter = gameObject.transform.position;
addscore = FindObjectOfType<point_brazil>();
aktivGameOver = FindObjectOfType<point_brazil>();
star = FindObjectOfType<point_brazil>();
}
72
void Update () {
if (Input.GetMouseButtonDown (0)) {
RaycastHit2D hit = Physics2D.Raycast (Camera.main.ScreenToWorldPoint (Input.mousePosi
tion), Vector3.zero);
if (hit.collider.gameObject.name == "Hunter 1(Clone)") {
down_hunter = true;//klik berfungsi hanya dicolider batu
}}
if (down_hunter) {
if (Input.GetMouseButtonUp (0)) {
down_hunter = false;
tap_hunter = true;
addscore.AddScore ();
Destroy(hunter);
Debug.Log ("tapberhasil");
//shot
} } } }
Kode Program 4. 14. Random Enemy and Tap
Script diatas merupakan controller game untuk menjalankan enemy
pemburu. Pada fungsi if (Input.GetMouseButtonDown (0)) artinya ketika enemy
di tekan pada RaycasHit2D maka akan menahan posisi enemy untuk menjalankan
fungsi Input.GetMouseButtonUp (0)) artinya ketika selesai menekan yang terjadi
pada enemy akan menghilang Destroy(hunter), sedangkan untuk menambah poin
perlu memanggil fungsi addscore.AddScore () poin akan bertambah 10 ketika
enemy berhasil di tekan.
4.4.15 Script Reward Stage 2 (Deforestasi)
Pada Scenereward ini terdapat tiga scene sesi pertama mengenalkan tugas
pohon dibumi, proses fotosintesis dan proses pernapasan manusia ditunjukkan
pada Gambar 4.42. Pada scene tugas pohon hanya terdapat tombol next, pada
scene fotosintesis terdapat tombol next dan back, sedangkan untuk proses
pernapasan manusia terdapat tombol next dan koleksi game. Pada Scene ini
diharapkan pemain dapat memahami pentingnya pohon dibumi.
Gambar 4. 42. Reward Deforestasi a) Fungsi Pohon b) Proses Fotosistesis
73
Gambar 4. 43. c) Proses Menghirup Oksigen
Scriptreward Brazil sebagai berikut:
using UnityEngine;
using System.Collections;
public class Script_Reward Brazil : MonoBehaviour {
public void Misi_Iran(int Misi_Iran){
Application.LoadLevel ("Misi_Iran");
}
public void next_reward 1(int next_reward 1){
Application.LoadLevel ("Reward _Brazil1");
}
public void next_reward 2(int next_reward 2){
Application.LoadLevel ("Reward _Brazil2");
}
public void next_reward 3(int next_reward 3){
Application.LoadLevel ("Reward _Brazil3");
}
public void koleksi(int koleksi){
Application.LoadLevel ("Scene_Koleksi");
}
}
Kode Program 4. 15. RewardDeforestasi
4.4.16 Script Misi Iran Stage 3 (Kota Berpolusi)
Gambar 4. 43 merupakan scene misi Iran menampilkan panel materi dari
isu iran yaitu Kota Berpolusi. Disamping panel materi terdapat animasi karakter
Natan minyimbolkan aktivis muda yang menggunakan masker, selain itu terdapat
tombol play untuk masuk ke tutorial Iran sedangkan tombol home mengembalikan
scene ke menu isu dunia.
74
Gambar 4. 44. Tampilan Misi Kota Berpolusi
using UnityEngine;
using System.Collections;
public class Script_MisiIran : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("PetaBumi");
}
public void GameIran(int tutor_gameiran){
Application.LoadLevel ("Tutorial_Iran");
}}
Kode Program 4. 16. Misi Kota Berpolusi
4.4.17 Script Tutorial Stage 3 (Kota Berpolusi)
Gambar 4.44 merupakan scene tutorial Iran menampilkan animasi cara
bermain pada stage 3 ini. Peringatan bahwa untuk menyelesaikan misi ini hanya
dalam waktu 60 detik. Terdapat tombol play untuk siap bermain dan tombol close
untuk mengembalikan ke scene misi Iran.
Gambar 4. 45. Tutorial Kota Berpolusi
using UnityEngine;
using System.Collections;
public class Script_TutorialIran : MonoBehaviour {
public void Play_GameIran(int play_GameIran){
Application.LoadLevel ("Play_IranGame");
}
public void Back_MisiIran(int back_MisiIran){
Application.LoadLevel ("Misi_Iran");
}
}
Kode Program 4. 17. Tutorial Kota Berpolusi
75
4.4.18 Script Play Stage 3 (Kota Berpolusi)
Gambar 4.45 merupakan sceneplaystage 3 ini menampilkan bahwa
pemain berda di jalan kota yang berpolusi. Rintangan pada stage ini adalah badai
debu sedangkan untuk poin adalah masker. Untuk dapat melewati badai debu
pemain harus melompatinya. Batas waktu untuk memainkan game ini yaitu 60
detik. Dapat dilihat dari menu bar timer menghitung mundur dari 60 sampai ke
nol. Pada bagian menu bar terdapat jumlah poin, judul stage 3 yaitu kota
berpolusi, tombol pause memberi jeda permainan dan tombol retry mengulang
kembali permainan. Dari permainan ini diharapkan pemain dapat menjaga
kesehatan dari cuaca buruk serta melindungi diri dengan menggunakan masker
untuk mengantisipasi polusi yang masuk langsung ke saluran pernapasan
manusia.
Gambar 4. 46. Play Stage 3 Kota Berpolusi
Script yang digunakan untuk menjalankan game pada stage 3 sebagai
berikut:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Script_PlayerNatan : MonoBehaviour {
public bool trigger_iran=true;
public float jumpheight_iran = 200f;
void Start(){
}
void Update ()
{
// PerintahPlayermelompat
if (Input.GetMouseButton (0) && trigger_iran == true) {
GetComponent<Rigidbody2D>().AddForce (Vector2.up * jumpheight_iran);
StartCoroutine (irannaik ());
76
}
}
public IEnumerator irannaik(){
trigger_iran = false;
yield return new WaitForSeconds (0.75f);
trigger_iran = true;
}
}
Kode Program 4. 18. Play Stage 3 Kota Berpolusi
4.4.19 Script Reward Stage 3 (Kota Berpolusi)
Gambar 4. 46 merupakan scene reward yang menampilkan materi tentang
bentuk polusi yang dapat mengamcam saluran pernapasan manusia. Dengan
animasi diharapkan dapat menarik minat pemain untuk membaca informasi.
Selain itu terdapat tombol next untuk lanjut ke misi selanjutnya dan tombol
koleksi untuk melihat kumpulan reward yang sudah berhasil didapatkan.
Gambar 4. 47. Reward Kota Berpolusi
using UnityEngine;
using System.Collections;
public class Script_reward Iran : MonoBehaviour {
public void Next_Reward Iran(int reward Iran){
Application.LoadLevel ("Reward _Iran2");
}
public void Misi_Australia(int misi_australia){
Application.LoadLevel ("Misi_Australia");
}
public void koleksi(int koleksi){
Application.LoadLevel ("Scene_Koleksi");
}
}
Kode Program 4. 19. Reward Kota Berpolusi
4.4.20 Script Misi Australia Stage 4 (Pemutihan Karang)
Gambar 4.47 scene ini menampilkan panel materi berisi isu lingkungan di
Australia tentang pemutihan karang pemain diajak untuk dapat menjaga
77
kelestarian laut. Di sebelah panel materi terdapat katakter karang dan alga tokoh
utama dalam stage 4 Australia. Selain itu terdapat tombol play untuk lanjut ke
scene tutorial sedangkan tombol home untuk mengembalikan ke scene isu dunia.
Gambar 4. 48. Tampilan Misi Pemutihan Karang
using UnityEngine;
using System.Collections;
public class Script_MisiAlga : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("PetaBumi");
}
public void Tutor_GameAustralia(int tutor_gameaustralia){
Application.LoadLevel ("TutorialAustralia");
}
} Kode Program 4. 20. Misi Pemutihan Karang
4.4.21 Script Tutorial Stage 4 (Pemutihan Karang)
Gambar 4. 48 scene ini menampilkan animasi cara bermain stage 5
Australia. Cara bermainnya menembakkan alga kearah air panas. Batas permainan
pada stage ini hanya 60 detik. Kesempatan untuk melemparkan alga hanya tiga
kali. Tombol play untuk siap bermain sedangkan tombol close untuk
mengembalikan ke Scene misi Australia.
Gambar 4. 49. Tutorial Pemutihan Karang
78
using UnityEngine;
using System.Collections;
public class Script_TutorialAustralia : MonoBehaviour {
public void Play_GameAustralia(int play_GameAustralia){
Application.LoadLevel ("Play_AustraliaGame");
}
public void Back_MisiAustralia(int back_MisiAustralia){
Application.LoadLevel ("Misi_Australia");
}
}
Kode Program 4. 21. Misi Australia
4.4.22 Script Play Stage 4 (Pemutihan Karang)
Pada Gambar 4.49 menampilkan berlatar belakang dasar laut yang
diserang oleh segerombolan air panas. Pada stage ini pemain harus membantu
alga untuk mengusir air panas dari dasar laut yaitu dengan cara melempar alga
hingga mengenai air panas. Alga hanya mempunyai tiga kali kesempatan untuk
dapat mengusir air panas. Apabila air panas hilang maka akan menambah poin.
Waktu permainan ini adalah 60 detik. Pada menu bara terdapat kolom poin untuk
mencatat jumlah poin yang didapatkan, judul stage yaitu pemutihan karang,
tombol pause untuk memberikan jeda permainan sedangkan tombol retry untuk
mengulang permainan.
Gambar 4. 50. Play Stage4 Pemutihan Karang
Berikut merupakan Script swipe pada stage 4:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Script_SwipeAusi : MonoBehaviour {
Vector2 startPos, endPos, direction;
float touchTimeStart, touchTimeFinish, timeInterval;
Rigidbody2D rb;
bool throwAllowed = true;
79
[Range(0.05f, 1f)]
public float throwForse = 0.3f;
void Start () {
rb = GetComponent<Rigidbody2D> ();
}
void Update () {
//if you release your screen
if(Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began){
touchTimeStart = Time.time;
startPos = Input.GetTouch (0).position;
}
//if you release your finger
if(Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Ended && throwAllo
wed){
touchTimeFinish = Time.time;
timeInterval = touchTimeFinish - touchTimeStart;
endPos = Input.GetTouch (0).position;
direction = startPos - endPos;
rb.isKinematic = false;
rb.AddForce (-direction/timeInterval * throwForse);
throwAllowed = false;
}
}}
Kode Program 4. 22. Swipe Alga
4.4.23 Script Reward Stage 4 (Pemutihan Karang)
Pada scenereward Australia menampilkan 3 scene ditunjukkan pada
Gambar 4.50, pada scene pertama materi tentang pemutihan karang, kedua
penyebab pemutihan karang dan ketiga gambar karang yang ada di laut.
Gambar 4. 51. Reward Pemutihan Karang a) Definisi Pemutihan Karang b) Penyebab Pemutihan
Karang c) Gambar Karang
80
using UnityEngine;
using System.Collections;
public class Script_Reward Aus : MonoBehaviour {
public void Misi_Indonesia(int Misi_Indonesia){
Application.LoadLevel ("Misi_Indonesia");
}
public void Reward _Aus2(int Reward _Aus2){
Application.LoadLevel ("Reward _Australia2");
}
public void Reward _Aus3(int Reward _Aus3){
Application.LoadLevel ("Reward _Australia3");
}
public void Reward _Aus1(int Reward _Aus1){
Application.LoadLevel ("Reward _Australia");
}
public void koleksi(int koleksi){
Application.LoadLevel ("Scene_Koleksi");
}
Kode Program 4. 23. Reward Pemutihan Karang
Script diatas digunakan untuk memberi aksi pada tombol saat ditekan.
Pada tampilan reward Scene Reward_Australia1 terdapat tombol next. Apabila
tombol next ditekan maka fungsi public void Reward_Aus2 (int Reward_Aus2)
akan aktif dan Scene akan berpindah Scene Reward_Australi2. Pada
SceneReward_Australia2 terdapat tombol next dan back, ketika menekan tombol
next maka fungsi public void Reward_Aus3 (int Reward_Aus3) akan aktif dan
Scene akan berpindah pada Scene Reward_Australia3 sedangkan tombol back
pada Scene Reward_Australia2 fungsi public void Reward_Aus1
(int Reward_Aus1) akan aktif dan kembali ke scene Reward_Australia1. Scene
Reward_Australia3 terdapat tombol next dan back, tombol next pada scene ini
menggunakan fungsi public void Misi_Indonesia (int Misi_Indonesia) artinya
ketika tombol next ditekan maka scene akan berpindah ke scene Misi_Indonesia
sedangkan tombol back memiliki fungsi public void Reward_Aus2
(int Reward_Aus2) artinya ketika tombol back ditekan akan berpindah pada Scene
Reward_Australia2.
4.4.24 Script Misi Indonesia Stage 5 (Daur Ulang)
Gambar 4.51 scene misi Indonesia terdapat panel materi berisi isu
lingkungan bahwa Indonesia menduduki peringkat kedua penyumbang sampah
81
didunia. Disebalah panel materi menampilkan animasi sampah yang bergerak,
selain itu terdapat tombol play dan tombol home pada scene ini.
Gambar 4. 52. Tampilan Misi Daur Ulang
using UnityEngine;
using System.Collections;
public class Script_MisiIndonesia : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("IsuBumi");
}
public void Tutor_GameIndonesia(int tutor_gameindonesia){
Application.LoadLevel ("Tutor_Indonesia");
}
}
Kode Program 4. 24. Misi Daur Ulang
Script diatas digunakan untuk memberi aksi pada tombol play dan home.
Tombol home menggunakan fungsi public void Back_MapBumi
(int back_mapbumi) artinya ketika tombol ini ditekan maka akan kembali ke
Scene Isu Bumi. Sedangkan tombol play menggunakan fungsi public
void Tutor_GameIndonesia (int tutor_gameindonesia) artinya ketika menekan
tombol playscene akan berpindah ke scene Tutorial Indonesia.
4.4.25 Script Tutorial Stage 5 (Daur Ulang)
Pada scene ini menampilkan animasi cara bermain pada stage 5 dapat
dilihat pada Gambar 4.52. Pemain harus dapat berhasil menebak pasangan kartu
yang sama untuk mendapatkan poin yaitu tap pada kartu rahasia. Selain itu pada
Scene ini terdapat tombol play untuk lanjut ke scene bermain stage 5 dan close
kembali ke misi bumi.
82
Gambar 4. 53. Tutorial Daur Ulang
using UnityEngine;
using System.Collections;
public class Script_TutorIndonesia : MonoBehaviour {
public void Play_GameIndonesia(int play_GameIndonesia){
Application.LoadLevel ("Game_Indonesia");
}
public void Back_MisiIndonesia(int back_MisiIndonesia){
Application.LoadLevel ("Misi_Indonesia");
}
}
Kode Program 4. 25. Tutorial Daur Ulang
4.4.26 Script Play Stage 5 (Daur Ulang)
Pada scene ini menampilkan berlatar belakang pesisir pantai yang bersih
tanpa adanya sampah dapat dilihat pada Gambar 4.53. Cara bermain pada scene
ini yaitu menebak kartu yag sama sehingga mendapatkan poin. Setiap kartu
berhasil menemukan kartu yang sama mendapatkan poin 12. Kartu akan
menghilang ketika berhasil ditemukan. Kartu muncul secara random sehingga
setiap kali mengulang permaianan kartu akan berubah posisi. Poin tercetak pada
kolom menubar poin. Pada menubar terdapat judul stage yaitu daur ulang, tombol
pause dan tombol retry. Waktu permainan pada stage 5 yaitu 60 detik.
Gambar 4. 54. Play Stage 5 Daur Ulang
83
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.Collections.Generic;
public class GameController : MonoBehaviour {
[SerializeField]
private Sprite bgImage;
public Sprite[] puzzles;
public List<Sprite> gamePuzzles = new List<Sprite>();
public List<Button> btns = new List<Button>();
private bool firstGuess, secondGuess;
private int countGuesses;
private int countCorrectGuesses;
private int gameGuesses;
private int firstGuessIndex, secondGuessIndex;
private string firstGuessPuzzle, secondGuessPuzzle;
private Point fungsigameover;
void Awake(){
puzzles = Resources.LoadAll<Sprite>("Sprites/SampahPuzzle");
fungsigameover = FindObjectOfType<Point> ();
}
void Start(){
GetButtons ();
AddListeners ();
AddGamePuzzles ();
Shuffle (gamePuzzles);
gameGuesses = gamePuzzles.Count / 2;
}
void GetButtons(){
GameObject[] objects = GameObject.FindGameObjectsWithTag ("PuzzleButton");
for (int i = 0; i < objects.Length; i++) {
btns.Add (objects [i].GetComponent<Button> ());
btns [i].image.sprite = bgImage;
}
}
void AddGamePuzzles(){
int looper = btns.Count;
int index = 0;
for (int i = 0; i < looper; i++) {
if (index == looper / 2) {
index = 0;
}
gamePuzzles.Add(puzzles [index]);
index++;
}
}
void AddListeners(){
foreach (Button btn in btns) {
btn.onClick.AddListener (() => PickPuzzle ());
Debug.Log ("klikbutton");
}
}
public void PickPuzzle(){
if (!firstGuess) {
firstGuess = true;
84
firstGuessIndex = int.Parse (UnityEngine.EventSystems.EventSystem.current.currentSelect
edGameObject.name);
firstGuessPuzzle = gamePuzzles [firstGuessIndex].name;
btns [firstGuessIndex].image.sprite = gamePuzzles [firstGuessIndex];
} else if (!secondGuess) {
secondGuess = true;
secondGuessIndex = int.Parse (UnityEngine.EventSystems.
EventSystem.current.currentSelectedGameObject.name);
secondGuessPuzzle = gamePuzzles [secondGuessIndex].name;
btns [secondGuessIndex].image.sprite = gamePuzzles [secondGuessIndex];
countGuesses++;
StartCoroutine(CheckIfThePuzzlesMatch());
}
}
IEnumerator CheckIfThePuzzlesMatch(){
yield return new WaitForSeconds (0.30f);
if ((firstGuessPuzzle == secondGuessPuzzle) && (firstGuessIndex != secondGuessIndex)) {
yield return new WaitForSeconds (0.10f);
btns [firstGuessIndex].interactable = false;
btns [secondGuessIndex].interactable = false;
btns [firstGuessIndex].image.color = new Color (0, 0, 0, 0);
btns [secondGuessIndex].image.color = new Color (0, 0, 0, 0);
fungsigameover.AddScore ();
Debug.Log ("match sukses");
CheckIfTheGameIsFinished ();
}else{
yield return new WaitForSeconds (0.10f);
btns [firstGuessIndex].image.sprite = bgImage;
btns [secondGuessIndex].image.sprite = bgImage;
}
yield return new WaitForSeconds (0.10f);
firstGuess = secondGuess = false;
}
void CheckIfTheGameIsFinished(){
countCorrectGuesses++;
if (countCorrectGuesses == gameGuesses) {
fungsigameover.gameOverActiv ();
Debug.Log ("Game Finished");
} }
void Shuffle(List<Sprite>List){
for (int i = 0; i < List.Count; i++) {
Sprite temp = List [i];
int randomIndex = Random.Range (i, List.Count);
List [i] = List [randomIndex];
List [randomIndex] = temp;
} }}
Kode Program 4. 26. Play Stage 5 Daur Ulang Puzzel
4.4.27 Script Reward Stage 5 (Daur Ulang)
Gambar 4.54 scene ini menampilkan cara membuat mobil – mobilan dari
botol bekas yang dikemas dalam bentuk animasi agar dapat dengan mudah
menarik anak untuk membaca.
85
Gambar 4. 55. Reward Daur Ulang a) Judul b) Alat dan Bahan c) Cara Membuat
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Script_Reward Indonesia : MonoBehaviour {
public GameObject button_next;
void Start () {
lanjutkan ();
}
void Update(){
}
public void Misi_Denmark(int Misi_Denmark){
Application.LoadLevel ("Misi_Denmark");
}
public void Back_Reward Indo1(int Reward Indo1){
Application.LoadLevel ("Reward _Indonesia");
}
public void Back_Reward Indo2(int Reward Indo2){
Application.LoadLevel ("Reward _Indonesia2");
}
public void Back_Reward Indo3(int Reward Indo3){
Application.LoadLevel ("Reward _Indonesia3");
}
public void koleksi(int koleksi){
Application.LoadLevel ("Scene_Koleksi");
}
public void lanjutkan(){
StartCoroutine (lanjut());}
IEnumerator lanjut(){
yield return new WaitForSeconds (40F);
button_next.SetActive (true);
}
}
Kode Program 4. 27. Reward Daur Ulang
86
4.4.28 Script Misi Denmark Stage 6 (Hemat Energi)
Gambar 4.55 scene ini menampilkan panel materi tentang kota terbersih
didunia yaitu Denmark. Disamping panel materi terdapat animasi yang bernama
alena yang menjadi aktivis muda yang menyerukan kepada anak – anak untuk
gemar naik sepeda. Pada secene ini terdapat tombol home dan tombol play.
Gambar 4. 56. Tampilan Misi Hemat Energi
using UnityEngine;
using System.Collections;
public class Misi_Denmark : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("PetaBumi");
}
public void Tutor_GameDenmark(int tutor_gamedenmark){
Application.LoadLevel ("Tutor_Denmark");
}}
Kode Program 4. 28. Misi Hemat Energi
4.4.29 Script Tutorial Stage 6 (Hemat Energi)
Gambar 4. 56 scene ini menampilkan cara bermain dalam bentuk animasi
yang bergerak menerangkan setiap langkah untuk mencapai misi. Terdapat
tombol play untuk bersiap memainkan game dan tombol close untuk kembali ke
misi Denmark.
Gambar 4. 57. Tutorial Hemat Energi
87
using UnityEngine;
using System.Collections;
public class tutor_denmark : MonoBehaviour {
public void Back_MisiDenmark(int back_misidenmark){
Application.LoadLevel ("Misi_Denmark");
}
public void Play_GameDenmark(int play_gamedenmark){
Application.LoadLevel ("Play_Denmark");
}
}
Kode Program 4. 29. Tutorial Hemat Energi
4.4.30 Script Play Stage 6 (Hemat Energi)
Gambar 4.57 scene ini berlatar belakang kota hijau. Pada Scene ini pemain
mempunyai 3 misi yaitu menemukan gergaji, menghilangkan kayu dan
menemukan Natan. Disetiap misi terdapat poin. Waktu bermain pada Scene ini
adalah 60 detik.untuk menjalankan Alena menggunakan tombol right, left, up and
down yang berada disudut bawah. Pada menubar secene ini terdapat kolom poin,
judul game, tombol pause dan tombol retry.
Gambar 4. 58. Play Stage 6 Hemat Energi
using UnityEngine;
using System.Collections;
public class movemaze : MonoBehaviour {
public Transform alenaObj;
public static string haveKey = "n";
void Start () {
}
void Update (){
}
public void klik_atas(){
GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, -3);
alenaObj.transform.eulerAngles = new Vector3 (0, 0, 0);
Debug.Log ("keatas");
}
public void klik_bawah(){
88
GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, 3);
alenaObj.transform.eulerAngles = new Vector3 (0, 0, 0);
Debug.Log ("kebawah");
}
public void klik_kanan(){
GetComponent<Rigidbody2D> ().velocity = new Vector2 (-3, 0);
alenaObj.transform.eulerAngles = new Vector3 (0, 0, 0);
Debug.Log ("kanan");
}
public void klik_kiri(){
GetComponent<Rigidbody2D> ().velocity = new Vector2 (3, 0);
alenaObj.transform.eulerAngles = new Vector3 (0, 0, 0);
Debug.Log ("kekiri");
}
}
Kode Program 4. 30. Play Stage 6 Hemat Energi
4.4.31 Script Reward Stage 6 (Hemat Energi)
Gambar 4.58 scene ini menampilkan animasi tentang manfaat bersepeda.
Untuk melanjutkan ke misi selanjutnya pemain harus menekan tombol next untuk
berpindah ke Scene misi Antartika.
Gambar 4. 59. Reward Hemat Energi
using UnityEngine;
using System.Collections;
public class Script_Reward Denmark : MonoBehaviour {
public void Misi_Antartika(int Misi_Antartika){
Application.LoadLevel ("Misi_Antartika");
}
public void koleksi(int koleksi){
Application.LoadLevel ("Scene_Koleksi");
}}
Kode Program 4. 31. Reward Hemat Energi
4.4.32 Script Misi Antartika Stage 7 (Aksi Dunia)
Gambar 4.59. scene ini menampilkan panel materi tentang ekosistem
beruang kutub di Antartika. Disamping panel terdapat animasi beruang, tombol
play untuk bermain ditutorial Antartika dan home untuk kembali ke isu dunia.
89
Gambar 4. 60. Tampilan Misi Aksi Dunia
using UnityEngine;
using System.Collections;
public class Script_MisiAntartika : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("PetaBumi");
}
public void Tutor_GameAntartika(int tutor_gameantartika){
Application.LoadLevel ("Turor_Antartika");
}} Kode Program 4. 32. Misi Aksi Dunia
4.4.33 Script Tutorial Antartika Stage 7 (Aksi Dunia)
Gambar 4.60 scene ini menampilkan langkah – langkah cara memainkan
satge 7 yang dikemas dalam sebuah animasi yang bergerak. Cara bermainnya
yaitu menggoyangkan handpone pemain ke atas, bawah, samping kanan dan
samping kiri. Ketika sudah siap untuk memainkan stage 7 tekan tombol play
sedangkan untuk kembali ke misi Antartika tekan close.
Gambar 4. 61. Tutorial Aksi Dunia
using UnityEngine;
using System.Collections;
public class Script_TutorAntartika : MonoBehaviour {
public void Play_GameAntartika(int play_GameAntartika){
Application.LoadLevel ("Play_Antartika");
}
public void Back_MisiAntartika(int back_MisiAntartika){
Application.LoadLevel ("Misi_Antartika"); }}
Kode Program 4. 33. Tutorial Aksi Dunia
90
4.4.33 Script Play Stage 7 (Aksi Dunia)
Pada stage 7 menampilkan latar belakang laut dan salju dapat dilihat pada
Gambar 4.61. Player merupkan beruang kutub yang harus dapat melewati enemy
seperti pemburu, pohon, dan boneka salju, apabila beruang tersentuh enemy maka
permainan akan selesai sedangkan untuk menambah poin beruang harus
menangkap ikan. Waktu permainan stage 7 yaitu 60 detik mengitung mundur
hingga 0 (nol). Pada menu bar terdapat kolom poin untuk mencetak jumlah poin
yang didapatkan, judul stage 7 yaitu Aksi dunia , tombol pause untuk member
jeda dan tombol retry untuk mengulang kembali permainan stage 7 dari awal.
Gambar 4. 62. Play Stage 7 Aksi Dunia
using UnityEngine;
using System.Collections;
public class Script_Player : MonoBehaviour {
public float playerspeed=0.1f;//0.05f di unity,0.01f d Script asli masih lama
public GameObject player;
private Vector3 backposPlayer;
public float pos_xplayer=0, pos_yplayer=0;
private bool playControl;
void Start () {
playControl = false;
}
void Update () {
if(playControl){
backposPlayer = player.transform.position;
pos_xplayer = backposPlayer.x;
pos_yplayer = backposPlayer.y;
//accelerometer
pos_xplayer=backposPlayer.x+(playerspeed*Input.acceleration.x);
pos_yplayer=backposPlayer.y+(playerspeed*Input.acceleration.y);
if(Input.GetKey(KeyCode.RightArrow)){
Debug.Log ("KANAN");
pos_xplayer = backposPlayer.x + playerspeed;
}
if(Input.GetKey(KeyCode.LeftArrow)){
Debug.Log ("Kiri");
pos_xplayer = backposPlayer.x - playerspeed;
}
if(Input.GetKey(KeyCode.UpArrow)){
91
Debug.Log ("Atas");
pos_yplayer = backposPlayer.y + playerspeed;
}
if(Input.GetKey(KeyCode.DownArrow)){
Debug.Log ("Bawah");
pos_yplayer = backposPlayer.y - playerspeed;
}
player.transform.position = new Vector2 (pos_xplayer,pos_yplayer); } }
public void ToogleControl(bool toogle){
playControl = toogle; }}
Kode Program 4. 34. Accelerometer Controller Stage 5 Aksi Dunia
Script diatas merupakan fungsi – fungsi untuk menjalankan sistem
accelerometer, agar player dapat bergerak keatas menggunakan fungsi
(Input.GetKey(KeyCode.UpArrow)), bergerak ke bawah menggunakan fungsi
(Input.GetKey(KeyCode.DownArrow)), bergerak ke kanan menggunakan fungsi
(Input.GetKey(KeyCode.RightArrow)) dan menggerakkan kekiri menggunakan
fungsi (Input.GetKey(KeyCode.LeftArrow)).
4.4.34 Script Reward Stage 7 (Aksi Dunia)
Gambar 4.62 scene ini merupakanstage 7 menampilkan informasi aksi
dunia tentang penyelamatan beruang kutub yanga ada di Antartika. Disamping
kotak informasi terdapat animasi beruang kutub. Tombol next digunakan untuk
kembali ke isu dunia, karena permainan sudah tercapai semuanya.
Gambar 4. 63. Reward Aksi Dunia
using UnityEngine;
using System.Collections;
public class Script_reward antartika : MonoBehaviour {
public void Back_MapBumi(int back_mapbumi){
Application.LoadLevel ("PetaBumi");
}
public void koleksi(int koleksi){
Application.LoadLevel ("Scene_Koleksi");
}}
Kode Program 4. 35. Reward Aksi Dunia