Jetzt dürft ihr denken was ihr wollt! SNAKE? der ist doch alt!
Ja, das ist er, dashalb will ich mich mal daran machen, undzwar nicht nur mit x,y sondern auch mit z-akse.
Das 3d kommt aber erst später, ich binn nehmlich erst mal bei die engine zu machen.
Ja, snake engines gibt es, aber nicht so wie ich es will.
Snakeengine
Bei snake hüpft die slange ja bekannter weise immer, aber das will ich nicht. Sie soll sich wie eine schlange verhalten.
Damit das möglich ist, habe ich eine liste erstellt, st.
diese wird jeden step mit den x und y kordinaten den kopfes gefüllt
Diese liste ist 16*10*2 (320) lang, weil jedes teilstück 16 lang ist, davon gibt es max. 10, und 2 (später 3) brauche ich für die x und y akse!
also: create event vom kopf:
Da geht super und zieht auch nicht so extrem performance.
Dann gibt es auch noch die punkte, die im raum per random erstellt werden.
Wenn man kolidiert, dann score+= 1
doch jetzt zum problem:
Im drawevent, werde ich die punkte drawen, die hinter dem head mit gezogen werden:
Sollte funktioniern, tut es auch, nur nicht so wie ich es will
wenn der score nur 1 ist, wird der sprite nur an einer der letzten position gedrawt, und wenn man mehr als 1 score hat, dann werden die anderen nur 1 px hinter dem forderem gedrawt!
Wer es nicht versteht, Klick-klack
Bis jetzt steht noch nicht viel, und wenn jemand ein ganz ander idee hat, darf er sie gerne äußern!
Ich wette das die antwort verhältnismäsig einfach ist, doch sie kommt mir einfach nicht!
Ja, das ist er, dashalb will ich mich mal daran machen, undzwar nicht nur mit x,y sondern auch mit z-akse.
Das 3d kommt aber erst später, ich binn nehmlich erst mal bei die engine zu machen.
Ja, snake engines gibt es, aber nicht so wie ich es will.
Snakeengine
Bei snake hüpft die slange ja bekannter weise immer, aber das will ich nicht. Sie soll sich wie eine schlange verhalten.
Damit das möglich ist, habe ich eine liste erstellt, st.
diese wird jeden step mit den x und y kordinaten den kopfes gefüllt
Diese liste ist 16*10*2 (320) lang, weil jedes teilstück 16 lang ist, davon gibt es max. 10, und 2 (später 3) brauche ich für die x und y akse!
also: create event vom kopf:
Da geht super und zieht auch nicht so extrem performance.
Dann gibt es auch noch die punkte, die im raum per random erstellt werden.
Wenn man kolidiert, dann score+= 1
doch jetzt zum problem:
Im drawevent, werde ich die punkte drawen, die hinter dem head mit gezogen werden:
GML-Quellcode
- ds_list_delete(st,0)// löscht die letzten x kordinaten aus der liste, die brauche ich nicht mehr
- ds_list_delete(st,0)// und dann auch noch mit den y
- ds_list_add(st,x)// fügt die aktuelle x position hinzu
- ds_list_add(st,y)// und das auch noch mit y
- //Hier das problem
- var i;
- for (i=0 i<=score i+=1){
- draw_sprite(sprite0,-1,ds_list_find_value(st,i),ds_list_find_value(st,i+1))
- }
Sollte funktioniern, tut es auch, nur nicht so wie ich es will
wenn der score nur 1 ist, wird der sprite nur an einer der letzten position gedrawt, und wenn man mehr als 1 score hat, dann werden die anderen nur 1 px hinter dem forderem gedrawt!
Wer es nicht versteht, Klick-klack
Bis jetzt steht noch nicht viel, und wenn jemand ein ganz ander idee hat, darf er sie gerne äußern!
Ich wette das die antwort verhältnismäsig einfach ist, doch sie kommt mir einfach nicht!
Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von SDX ()