Nu är jag i Piteå igen, vilket innebär att jag kan börja koda.
Börjar med lite prototyper. Cirklar i olika färger som representerar olika kommande animationer. Har fått iordning på fallande plattformar, men jösses så problem jag har med att få fiender att röra sig som jag vill. Jag har en massa olika fiender och att få dem att hoppa/gå automatiskt samtidigt som de måste ha rätt gravitation och gärna försöka ge sig på Trashenstein är svårt som sjutton. Det är där mina problem kommer ligga.
Medveten om att det är ett stort projekt, men jag måste ju pusha mig litegranna. Tror jag kommer kunna bli klar med alla spelelement förutom fienderna nu i veckan.
Jag har dock svårt för kontrollerna. Eftersom jag är en konsollkille, så har jag alltid det i tankarna. Lätt att bara kunna köra A, B, X & Y för allting, men att få spelaren att trycka på control för att slåss och space för att hoppa är inte så lätt. Speciellt inte när man får fler attacker när man är komplett. Undrar om jag borde designa det utifrån en vanlig handkontroll iallafall.
EDIT: Förresten, ni kanske vill se hur jag fick till de fallande plattformarna.
Det är faktiskt två olika objekt.
I obj_falling_platform så har jag två variabler.
timer = 15 och stepped = false
Sedan har jag en vanlig kod.
if place_meeting(x,y-2,obj_head)
{
stepped = true
}
if stepped = true
{
timer -=1
if timer ==0
{
instance_destroy()
instance_create(x,y,obj_falling_platform2)
}
}
Det innebär att om plattan rör vid protagonisten (obj_head), så blir variablen "stepped" igång.
Är "stepped" igång, så sänks variabeln "timer" med 1. Eftersom denna kod blir läst 30 gånger per sekund och variabeln börjar på 15, så kommer den till 0 efter en halv sekund.
När den timern når 0, så förstörs objektet och i dess plats skapas obj_falling_platform2.
I obj_falling_platform2 finns det bara en variabel. new = 60.
Standardkoden är kort för detta objekt.
y+=2
new -=1
if new ==0
{
instance_create(x,y-120,obj_falling_platform)
}
Det innebär alltså att obj_falling_platform2 faller 2 pixlar nedåt 30 gånger varje sekund. Variabeln "new" sänks också med 1. Eftersom new låg på 60, tar det två sekunder för den att nå 0. Då har obj_falling_platform2 fallit 120 pixlar. Så när new ligger på 0, så skapas ett nytt objekt, 120 pixlar ovanför sig själv. obj_falling_platform, så att allting kan återupprepas.