www.gmindo.web.id/forum
Forum ini sudah tidak dipakai lagi. Silakan ke forum baru di www.gmindo.web.id/forum Very Happy

Terima kasih

Join the forum, it's quick and easy

www.gmindo.web.id/forum
Forum ini sudah tidak dipakai lagi. Silakan ke forum baru di www.gmindo.web.id/forum Very Happy

Terima kasih
www.gmindo.web.id/forum
Would you like to react to this message? Create an account in a few clicks or log in to continue.

[Intermediate] Ds_stack

+4
Arif_IndoFuture
zebrakelabu
HaNIFU
Kevin Blaze Coolerz
8 posters

Go down

[Intermediate] Ds_stack Empty [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Mon 10 Jun 2013, 11:56

Ds_stack hampir sama dengan ds_queue, tapi metode yg dipakai ds_stack ialah LIFO (Last In - First Out).

Bisa dibayangkan dengan sebuah tumpukan buku. Semakin kamu menumpuk (push) sebuah buku, maka tumpukannya akan semakin tinggi, dan jika kamu mau mengambil buku paling bawah, maka kmu harus mengambil buku paling atas terlebih dahulu. (ingat LIFO) Very Happy

Fungsi-fungsi yang disediakan pada ds_stack:

1. ds_stack_create()
new_stack = ds_stack_create()
Membuat ID data struktur baru, dengan nama ID new_stack.

2. ds_stack_destroy(id)
ds_stack_destroy(new_stack)
Menghapus ID dari memory, untuk meghilangkan beban (lakukan jika sdh tidak dibutuhkan ds_stack lgi).

3. ds_stack_clear(id)
ds_stack_clear(new_stack)
Hanya menghapus tumpukan buku (nilai new_stack nya Very Happy ), tidak menghapus ID nya dari memory.

4. ds_stack_copy(id,source)
ds_stack_copy(new_stack, old_stack)
Meng-copas nilai dari old_stack ke new_stack.

5. ds_stack_size(id)
size = ds_stack_size(new_stack)
Return ada berapa banyak nilai yang sudah dimasukan kedalam new_stack. (ada berapa buah buku dalam 1 tumpukan itu? )

6. ds_stack_empty(id)
if ds_stack_empty(new_stack) {show_message("Gak ada tumpukan buku disini Very Happy")}
Cek apakah ID tsb kosong atau gk?

7. ds_stack_push(id,val)
ds_stack_push(new_stack,1)
menambah nilai/value pada new_stack, dengan nilai 1 Very Happy
Artinya nambah 1 buku lgi di tumpukan, dan buku tsb tentu di taruh paling atas (ingat LIFO).

8. ds_stack_pop(id)
ds_stack_pop(new_stack)
Dibaca nilai paling atas, lalu di buang/di hapus.

9. ds_stack_top(id)
ds_stack_top(new_stack)
Dibaca aja nilai paling atasnya, tapi gak di hapus.

10. ds_stack_write(id)
str = ds_stack_write(new_stack)
Menjadikan nilai pada new_stack sebagai string, mungkin untuk di save, untuk suatu saat di load kembali.

11. ds_stack_read(id,str)
ds_stack_read(new_stack,str)
Ini untuk load nya Very Happy

Ini contoh penggunaan ds_stack, yaitu contoh untuk mereverse time atau membalikan waktu Very Happy Download ds_stack reverse time.gmk (bukan buatan ku)

Cara pake nya:
tekan tombol kanan & kiri pada keyboard utk bergerak, kalo udah tekan spasi, maka char akan bergerak mundur sesuai dengan gerakan mu yang sebelumnya Very Happy

Teorinya:
Setiap 4 step (alarm) nilai x pada char di masukan ke dalam stack dengan menggunakan ds_stack_push(), lalu saat tekan spasi, maka nilai terakhir pada stack nya di baca dan dibuang menggunakan ds_stack_pop() Very Happy dibaca trus sampai stack nya habis.

Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by HaNIFU Mon 10 Jun 2013, 12:26

Nice info, fungsi ds_... banyak yang saya emang belum ngerti... [Intermediate] Ds_stack 364988687
Siip, [Intermediate] Ds_stack 3612386930
Udah aku donload mau di amati dulu fungsinya... [Intermediate] Ds_stack 364988687
HaNIFU
HaNIFU
Global Moderator
Global Moderator

100%
Jumlah posting : 689
Points : 858
Join date : 11.04.13
Lokasi : Surakarta

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Mon 10 Jun 2013, 12:50

@HaNIFU:
hehe, thx Very Happy
ak tinggal fungsi ds_grid dan ds_maps yg blum di pelajari. tdi baru saja lihat di helpfile tentang ds_maps & kyk ny ak sdikit paham dgn cara kerja ny Very Happy

seep, silakan di amati Very Happy
Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by HaNIFU Mon 10 Jun 2013, 21:15

Ya aku pernah coba buat dari example-nya yang ds_map. Saya fungsikan untuk menyimpan posisi benda" yang di room. Tapi udah lupa dan sudah hilang... [Intermediate] Ds_stack 1371890812

Kalau udah tau share lagi ya... it's very helpfull [Intermediate] Ds_stack 364988687 [Intermediate] Ds_stack 364988687
HaNIFU
HaNIFU
Global Moderator
Global Moderator

100%
Jumlah posting : 689
Points : 858
Join date : 11.04.13
Lokasi : Surakarta

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Mon 10 Jun 2013, 21:28

iy, utk item & keterangan item tsb (menurut help file ny Very Happy )

ok, pasti ak share kalo ad ilmu lagi Very Happy

Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by zebrakelabu Tue 11 Jun 2013, 06:56


dulu aku pernah punya AI command stack, itu pakai ds_stack. lupa naruh dimana harus cari

jadi intinya musuh tuh udah punya mode default, guard misalnya (dia muter2 jaga daerahnya). begitu dia lihat musuh maka di push lah mode baru ke command stack dia, mode attack misalnya. kemudian diberi flag untuk gagal (misalnya sejauh mana dia boleh pergi dari lokasi awal waktu attack). begitu kondisi tercapai di pop lah mode attack, kemudian di push mode return (dia balik ke lokasi awal). sesampai di lokasi awal di pop lagi mode return, jadi mode default lagi (dia muter2 lagi), dst

bingung ga tuh Smile

zebrakelabu
zebrakelabu
Admin
Admin

100%
Jumlah posting : 933
Points : 960
Join date : 06.01.13
Lokasi : Jakarta

http://www.project25games.com

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Tue 11 Jun 2013, 09:25

wah, dpt pengetahuan lgi soal AI Very Happy

gk jga om, ak paham mksd ny Razz

Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Arif_IndoFuture Tue 11 Jun 2013, 12:01

@Zebra:
Itu AI nya kayanya cocok untuk tower defense deh Very Happy
Arif_IndoFuture
Arif_IndoFuture
GM Beginner
GM Beginner

100%
Jumlah posting : 316
Points : 279
Join date : 12.01.13
Age : 26
Lokasi : Jogja

https://www.facebook.com/IndonesianFuture

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by zebrakelabu Tue 11 Jun 2013, 15:48

@arif

itu memang cocok untuk game2 tipe RTS

@kevin

mungkin masih ada di gmc tuh contohnya. search aja AI command stack
zebrakelabu
zebrakelabu
Admin
Admin

100%
Jumlah posting : 933
Points : 960
Join date : 06.01.13
Lokasi : Jakarta

http://www.project25games.com

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Tue 11 Jun 2013, 18:38

iy prnah download om Very Happy
ak kira command stack itu gk pke ds_stack, cz gk ak lihat script ny Very Happy

Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Asuna Wed 12 Jun 2013, 12:16

XXXXXXXXXX

(kehapus Hammer)


Terakhir diubah oleh Asuna tanggal Thu 13 Jun 2013, 16:10, total 2 kali diubah
Asuna
Asuna
Global Moderator
Global Moderator

100%
Jumlah posting : 1711
Points : 1901
Join date : 10.01.13

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Riza_Farhandi Wed 12 Jun 2013, 13:54

Another nice info Very Happy
Nambah ilmu lg nih Very Happy
Thanks ya
Riza_Farhandi
Riza_Farhandi
GM Beginner
GM Beginner

100%
Jumlah posting : 393
Points : 356
Join date : 24.01.13
Age : 25
Lokasi : Tangerang Selatan

http://mrizaf.mywapblog.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by zebrakelabu Thu 13 Jun 2013, 13:05

@asuna




iya terus komputernya hang karena stack overflow [Intermediate] Ds_stack 650269930



tapi ini mengacu ke sistem kerjanya sih yah, secara kerja sama seperti stack beneran yang ada di bhs mesin komputer. artinya ga bakal bisa stack overflow lah, paling muncul error aja.
zebrakelabu
zebrakelabu
Admin
Admin

100%
Jumlah posting : 933
Points : 960
Join date : 06.01.13
Lokasi : Jakarta

http://www.project25games.com

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Asuna Thu 13 Jun 2013, 16:07

@zebrakelabu
di Java & C# ada stack overflow exception
trus kalo di javascript sama GM kalo terjadi pemanggilan rekursif yg infinite scriptnya akan berhenti total (maybe) Very Happy
di pemrograman C/C++ mungkin lebih parah errornya

ah sudahlah biarin aja, lupa nulisnya apa tadi Hammer
Asuna
Asuna
Global Moderator
Global Moderator

100%
Jumlah posting : 1711
Points : 1901
Join date : 10.01.13

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by mrtwo Thu 17 Oct 2013, 00:03

Buat contoh fungsi Ds stack dalam game dong, seperti Ds Queue yg om zebra kelabu buat Very Happy
mrtwo
mrtwo
Newbie
Newbie

100%
Jumlah posting : 17
Points : 19
Join date : 05.10.13

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Thu 17 Oct 2013, 10:40

itu diatas ada example ny kan? No Hope 
coba baca lagi Very Happy
Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Zihad Rizky Edwin Fikri Mon 21 Oct 2013, 15:58

Wew, bisa buat bikin undo dong
Zihad Rizky Edwin Fikri
Zihad Rizky Edwin Fikri
GM Beginner
GM Beginner

55%
Jumlah posting : 409
Points : 431
Join date : 12.05.13
Age : 26
Lokasi : jaktim

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Kevin Blaze Coolerz Mon 21 Oct 2013, 18:59

yupz, bisa Very Happy
dan memang fungsi undo lebih pas kalo pke fungsi ini
Kevin Blaze Coolerz
Kevin Blaze Coolerz
Admin
Admin

100%
Jumlah posting : 3323
Points : 3795
Join date : 06.01.13
Age : 29
Lokasi : Palembang

http://kevin-blaze-coolerz.blogspot.com/

Kembali Ke Atas Go down

[Intermediate] Ds_stack Empty Re: [Intermediate] Ds_stack

Post by Sponsored content


Sponsored content


Kembali Ke Atas Go down

Kembali Ke Atas

- Similar topics

 
Permissions in this forum:
Anda tidak dapat menjawab topik