ROB Bowden: Hi. Aku Rob. Dan saya berharap Anda siap untuk mengambil apa Aku mengantar atau meletakkan, atau mari kita mulai. Jadi hal pertama yang kita butuhkan lakukan adalah menjemput. Sekarang, mengambil ini akan menghapus ikon penumpang dari Google peta di sudut kanan bawah dan dari Google Earth di pusat layar. Jadi dalam rangka untuk menghapus orang-orang ikon, kita perlu memiliki referensi untuk mereka di suatu tempat. Tapi saat ini, fungsi mengisi hanya akan menyingkirkan mereka. Jadi kita akan harus memodifikasi mengisi untuk menjaga mereka di sekitar. Hal pertama Sekarang kita akan melihat adalah bahwa kita memiliki penumpang array yang global. Jadi kita akan menggunakan global penumpang array dalam mengisi. Dalam Mengisi, kita melihat bahwa kita perulangan atas semua penumpang kami. Dan lingkaran ini yang menciptakan menempatkan tanda untuk Google Earth dan penanda untuk Google Map. Dan sekarang kami modifikasi untuk mengisi adalah berada di sini. Jadi kita menambahkan pada penumpang kami ' Array objek ini yang menjaga sekitar penanda dan tempat mark kami hanya dibuat bersama dengan rumah dan nama penumpang. Jadi itu saja untuk mengisi. Sekarang kita perlu melihat kelas Pick Up. Jadi di kelas Pick Up, kita sekali lagi akan iterate atas semua penumpang kami. Tapi sekarang sudah global kami penumpang array. Dan di sini kita melihat bahwa baik, telah kita sudah mengambil penumpang ini? Karena jika kita telah mengambil ini penumpang, kita lihat pada akhirnya bahwa kita akan mengatur penanda dan Tempat mark null karena mereka tidak lagi di peta Google. Jadi jika kita telah mengambil ini penumpang maka kita hanya akan terus penumpang berikutnya. Lain, kita periksa untuk melihat apakah ini Rumah penumpang adalah bagian dalam Array rumah itu. Ini adalah cek yang kita perlu memastikan bahwa kita tidak mengambil mahasiswa sebagai spec mengatakan. Jadi, jika penumpang adalah mahasiswa baru, kita akan terus penumpang berikutnya. Setelah kami memverifikasi bahwa ini adalah penumpang kita harus mengambil, kita sekarang akan memeriksa lintang dan bujur penumpang dan melihat kalau itu dalam waktu 15 kaki pesawat ulang-alik. Jika itu yang terjadi, kita benar-benar ingin untuk mengambil penumpang ini. Jadi kita mengintegrasikan seluruh kursi di pesawat kami mencari untuk melihat apakah ada tempat yang tersedia untuk penumpang. Jika salah satu kursi adalah null, itu tempat yang tersedia. Jadi kita menambahkan penumpang ke kursi. Kita ingat bahwa kita mengambil penumpang sehingga pada akhirnya, kita bisa mengumumkan jika kita benar-benar tidak memilih siapa pun. Kita ingat bahwa kita duduk ini penumpang karena jika kita berhasil mendapatkan melalui seluruh shuttle tanpa tempat duduk penumpang, maka kita perlu mengumumkan bahwa kita keluar dari kursi. Kemudian kita menghapus tempat mereka menandai dari Google Earth. Kami menghapus penanda mereka dari Google Maps, diatur di dalam penumpang kami ' Tempat Array tanda dan penanda null seperti yang kita katakan sebelumnya. Dan kemudian itu saja. Penumpang telah duduk. Setelah kami melakukan itu untuk semua penumpang dalam waktu 15 meter dari shuttle, kita perlu rechart. Jadi Chart adalah apa yang akan menampilkan penumpang di kursi di sini. Jadi sekarang, mari kita lihat Chart. Di dalam Chart, kita akan menjadi membangun HTML untuk grafik. Jadi grafik akan menjadi daftar memerintahkan. Kemudian kita akan iterate atas semua kursi di pesawat kami. Jadi, jika kursi khusus ini adalah null, yang berarti kita ingin item Daftar yang menunjukkan bahwa itu adalah mudah kosong. Lain, jika tidak null, maka kita ingin Daftar item yang akan menampilkan nama penumpang dan rumah penumpang itu di kursi ini. Setelah kami iterasi atas semua kursi maka kita menutup memerintahkan daftar kami dan menggunakan jQuery untuk memilih grafik div dan mengganti itu dengan HTML baru memerintahkan daftar. Dan itu saja untuk Bagan. Jadi hal terakhir adalah drop off. Sekarang drop off akan menjadi cukup mirip untuk mengambil. Alih-alih perulangan atas semua penumpang, kita akan loop atas semua kursi pesawat ulang-alik. Jadi perulangan atas kursi shuttle, kami lihat adalah kursi shuttle tertentu tidak nol, dalam hal ini ada seorang penumpang di kursi ini. Jika itu yang terjadi, kami ingin untuk mengambil lintang dan bujur penumpang ini. Jadi dengan menggunakan array rumah itu, kami akan ambil rumah penumpang di kursi ini dan kemudian ambil lintang rumah tertentu dan juga untuk bujur. Sekarang, kami sekali lagi menggunakan jarak untuk melihat di rumah itu adalah dalam waktu 30 meter dari kita. Jika itu yang terjadi, mereka ingin mengatur kursi ini untuk null, karena penumpang dijatuhkan off, dan kenaikan yang penumpang diturunkan. Sehingga pada akhirnya, jika tidak ada seorang pun turun, kami mengumumkan bahwa tidak ada ingin untuk turun di sini. Akhirnya, kita perlu rechart sehingga kami tampilkan, kursi kosong baru. Sekarang, Anda hanya perlu untuk mengimplementasikan beberapa fitur tambahan. Sekarang, ada banyak yang dapat Anda memilih dari. Tapi dalam kasus kami, kami menerapkan teleport, terbang, dan mempercepat, dan melaju. Jadi mari kita lihat mereka. Pertama, mari kita lihat yang mempercepat fitur. Jadi dalam kasus kami, dalam keystroke fungsi, di mana kami sudah menangani semua kunci ini, kita juga akan mengenali X dan Z. Yang kita tentukan bahwa karakter ini akan menyebabkan kecepatan pesawat ulang-alik untuk meningkat dan menurun. Jadi melihat bahwa kami menempatkan terikat pada bagaimana tinggi dan bagaimana rendah kecepatan dapat benar-benar pergi karena kita tidak ingin pesawat ulang-alik terlalu cepat. Dan kami juga tidak ingin pesawat itu kecepatan untuk pergi ke nol atau mungkin bahkan negatif yang akan menghasilkan dalam beberapa perilaku yang aneh. Dan itu karena ngebut dan memperlambat. Sekarang, mari kita lihat terbang. Jadi ingat bahwa fitur terbang mengharuskan Anda untuk memasukkan Kode Konami. Jadi di atas, kita melihat kita memiliki beberapa variabel global, Konami Kode yang array yang hanya melacak kunci yang perlu dimasukkan untuk Kode Konami. Ada Bool yang hanya menunjukkan apakah Kode Konami telah sudah dimasukkan. Dan kemudian ada indeks ke array Konami Code yang kita saat ini di. Jadi jika pengguna sudah memasuki tiga karakter dari Kode Konami maka indeks akan menunjuk ke hal keempat dalam array, Indeks ketiga. Menggunakan itu, sekali lagi kita akan melihat kunci stroke. Dan pada stroke kunci yang kita lihat di sini bahwa jika Kode Konami belum sudah masuk, maka kita ingin melihat adalah kunci yang dimasukkan apa yang kita saat ini mengharapkan dari array Konami Code. Jika itu terjadi, maka kita kenaikan indeks kami. Jika jenis pengguna Up maka indeks akan pergi ke salah satu. Kemudian pengguna akan mengetik lagi, Indeks pergi ke dua. Kemudian mereka akan mengetik bawah, ia akan pergi ke tiga. Jika mereka mengetik Q, itu akan diatur ulang ke nol karena mereka tidak cocok nilai yang diharapkan. Sekarang, jika mereka berhasil melewati seluruh array maka mereka telah memasuki Kode Konami. Dalam hal ini, sekarang Konami memasuki benar, kita lihat di sini bahwa jika Konami dimasukkan, kita menerima dua baru kunci, C dan E. Yang semua orang akan melakukan diatur terbang ke bawah dan terbang negara atas dalam pesawat. Jadi sudah ada untuk Anda. Anda hanya perlu mengambil keuntungan dari mereka. Dan itu saja untuk terbang. Terakhir, kami telah teleport. Jadi dalam HTML, kita melihat bahwa kami telah menambahkan kotak input dan tombol teleport. Kotak itu memiliki alamat ID, dan tombol memiliki tombol teleport ID. Sekarang satu detail sedikit mengganggu adalah bahwa jika kita tidak melakukan apa-apa dengan acara penangan maka ketika kita mencoba untuk mengetik sesuatu seperti A ke dalam kotak input, bukan benar-benar mengikat A, Google kami Bumi akan pindah ke meninggalkan karena A sudah terdaftar untuk menangani bergerak ke kiri. Jadi detail mengganggu di sini adalah bahwa ketika kita memiliki kunci ke bawah atau tombol up acara dalam kotak input, kita ingin untuk Event.stop propagasi yang hanya akan mencegah geser pesawat. Setelah itu ditangani, kami juga ingin menambahkan penangan tombol teleport. Ketika kita klik tombol teleport, kita ambil alamat, yang saat ini nilai dalam kotak input, dan kemudian kita sebut fungsi teleport ini. Jadi, apa teleport fungsi terlihat seperti? Nah, hal pertama yang kita lihat adalah kita menggunakan geocoder. geocode. Jadi apa itu? Nah, jika kita melihat di bagian atas, kita melihat bahwa kita memiliki baru variabel global, geocoder. Dan ini adalah referensi global ke layanan geocoding. Sekarang apa yang lakukan untuk kita? Nah, di kotak masukan, aku akan menjadi memasuki sesuatu seperti 33 Oxford Street Cambridge, Massachusetts. Tapi kita tidak bisa benar-benar melakukan apa-apa dengan itu. Kami ingin mengkonversi bahwa untuk lintang dan bujur. Dan itulah yang layanan geocoding akan lakukan untuk kita. Di bagian bawah initcb, kita melihat bahwa kami memiliki geocoder sama baru google.maps.geocoder yang menginisialisasi variabel ini bagi kita. Jadi kembali ke teleport. Kita melihat kita sedang menggunakan geocoder tersebut. Kami geocoding alamat yang dilewatkan ke fungsi teleport yang menyambar dari kotak input. Dan kami lewat panggilan kembali yang mengambil hasil dan status. Sehingga hal pertama kita perlu memeriksa per dokumen API dari google.maps. GeocodingService. Peta Jadi kita harus memeriksa status untuk melihat apakah itu kembali. google.maps.GeocoderStatus.OK yang menunjukkan bahwa kita memiliki hasil yang valid. Jika kita tidak, maka kita dapatkan, tidak ada yang bisa dilakukan. Ini mungkin merupakan alamat yang tidak valid. Atau kekuatan layanan API akan turun atau siapa yang tahu? Dengan asumsi kita memiliki hasil keberhasilan kemudian kita akan mengambil lokasi dari hasil. Dan kita akan mengatur Google Map di sudut kanan bawah untuk berpusat di lokasi itu dan memperbarui bus di peta ke lokasi tersebut. Dan sekarang kita perlu memperbarui Google Earth plug-in. Jadi kami memperbarui lintang dan bujur pesawat ulang-alik. Dan kita juga perlu memperbarui shuttle.localAnchorCartesian karena jika Anda melihat shuttle.js, Anda akan melihat bahwa yang juga melacak lintang dan bujur. Jadi jika kita tidak memperbarui itu, kita memiliki lintang dan bujur asli disimpan tersembunyi di suatu tempat. Jadi memperbarui yang sekarang, kita sebut shuttle.updateCamera untuk me-refresh layar dan menunjukkan kepada kita lokasi baru kami. Dan itu saja. Nama saya Rob. Dan ini adalah Shuttle.