On Mon, Mar 17, 2003 at 09:38:20PM +0100, Jerker Hammarberg wrote:
I ett senare skede processar mittennivån dessa PrimitiveEvent och skickar upp GameEvent till översta nivån. Ett GameEvent kan vara att spelaren interagerar med ett objekt eller något annat som kräver respons på manusnivå. Men det blir väl som sagt i ett senare skede.
Vad tror du Ulf, krockar det här med något som du hade tänkt?
Näe då, det ser bra ut. På det här viset blir det ju också en mer formell uppdelning av det olika nivåerna, vilket är bra.
Jag ser inte riktigt hur du har tänkt styra animationen.
Allt är inte klart än :) Just nu så är enda möjligheten att slänga på en ny animation på spriten, men egentligen ska animationerna ju uppdateras automatiskt. Däremot behöver vi något sätt att signalera till spriten att animationen är slut. Kanske en virtuell metod hos Sprite?
Här måste vi nog tänka lite. Nu ska jag tjata om Airstrike igen, för där fanns samma problem:
Sprites har även en hastighet, och det är Display-klassens uppgift att flytta dem. Det är också Display-klassen som flyttar fram animationer. Det är ju inte självklart att det ska vara så, kanske ska man ha en separat "motor" som flyttar och uppdaterar sprites, och Display ritar bara upp spritesen där de råkar vara. Detta känns som en bra lösning för Odd.
Vad händer då när en animation tar slut eller liknade? I a.s. loopar animationen som default, men om man vill kan man sätta en pekare till en funktion som ska köras när en viss frame nås. Detta blir väl en virtuell metod (hos AnimationFrame eller Sprite?) i C++.
En annan sak jag har i a.s. är att man kan skicka meddelanden mellan alla sprites i spelet; man kan till exempel berätta att de ska svänga vänster, eller ge dem skada. Detta kanske inte behövs på samma sätt i Odd eftersom vi inte har någon "fysik", utan skriptar alla händelser.
En sak som vi kommer behöva är i alla fall en händelsekö, med en viss tid för varje händelse. Detta kanske kan kopplas ihop med GameEvent?
Apropå det... du hade väl tänkt kommentera lite bättre..?
Dokumentera bättre, ja. Ville bara få fram något fort i söndags. Ska vi köra på någon särskild stil, för Doxygen eller så?
Ulf