
Inhoudsopgave
De speler moet kunnen klikken op objecten via de Unity Input System. Er kunnen hier functies gebruikt worden zoals OnMouseUp() of de exacte muis positie uitgelezen worden om dan te checken of het een object overlapt.
Verder word er gebruik gemaakt van enkele toetsen op het toetsenbord, zoals:
Welke andere knoppen of input heb je nodig? Schrijf ze erbij.
De GameManager moet bijhouden wie actief is via een enumerator met twee waardes: Player en Enemy. Als de GameManager een ronde begint, dan zal een de GameManager de actieve beurt zetten op Player en deze in een variabele bijhouden. Als de speler een actie heeft gemaakt, of de beurt overslaat, dan word de EndTurn() aangeroepen om te bepalen wie de volgende is. Als de Player nu actief is, dan word de Enemy actief gezet en vice versa. Als de vijand een actie heeft gedaan word ook weer de EndTurn() functie aangeroepen.
Als de beurt word gewisseld, dan zijn er twee events die triggeren: OnStartTurn voor diegene die nu aan de beurt is en OnEndTurn voor diegene die de beurt net hebben gehad. Deze events zijn belangrijk om UI Canvas informatie te veranderen, zoals aangeven wie nu aan de beurt is. Als een vijand nieuw binnenkomt, dan zal het ook de OnSpawn event aanroepen van die vijand zodat het eventueel ParticleSystems en Audio kan afspelen. Deze effecten kunnen via een Prefab binnenkomen als Instantiate om alles gelijktijdig af te spelen.
Aan het begin van de beurt, krijgt de speler een nieuw aantal kaarten. Iedere kaart word aan de hand van de bijbehorende ScriptableObject ingevuld. Er is dus een leeg kaart prefab waarin de informatie word ingevuld die gedefinieerd is in de ScriptableObject, zie: Kaart Data.
Welke andere zaken komen kijken bij de turn based systeem? Hoe bepaald de vijand dat de beurt afgelopen is? Beschrijf het proces hier.
Iedere kaart bevat een standaard aantal informatie wat via een ScriptableObject word bijgehouden. Iedere individuele kaart zal dezelfde hoeveelheid informatie bevatten om de visuele prefab in te vullen van informatie voor de speler. De informatie die kaarten hebben zijn: